添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

I have a requirement to host a simple (static?) maintenance page for a Microsoft Power Pages site... the details are here:
https://learn.microsoft.com/en-us/power-pages/admin/enable-maintenance-mode#considerations-for-custo...
...seems simple but they Power Pages site will load the maintenance page in an iFrame and so requires "X-Frame-Options:SAMEORIGIN" to not be present.
By default HubSpot sets an http response header "X-Frame-Options: SAMEORIGIN" when serving all pages.

  1. Can an individual HubSpot page be configured to be served without this http header?
  2. If not, is it perfectly acceptable to add a static html page to HubSpot Files and serve the page from there?

Hi @jamietetlow

As far as I know, you should not be getting the header "X-Frame-Options: SAMEORIGIN" by default - that is something you would turn on in your domain security settings in order to show up.

However, this setting applies at the domain level, so it cannot be controlled for individual pages.

So you could either turn it off for your domain or, if you need that to be on, you could connect a sub-domain to HubSpot and publish the maintenance page on that sub-domain with the X-Frame-Options header turned off.

Hope this helps!

Hi @jamietetlow

As far as I know, you should not be getting the header "X-Frame-Options: SAMEORIGIN" by default - that is something you would turn on in your domain security settings in order to show up.

However, this setting applies at the domain level, so it cannot be controlled for individual pages.

So you could either turn it off for your domain or, if you need that to be on, you could connect a sub-domain to HubSpot and publish the maintenance page on that sub-domain with the X-Frame-Options header turned off.

Hope this helps!

Hi @jamietetlow  As far as I know, you should not be getting the header "X-Frame-Options:SAMEORIGIN" by default - that is something you would turn on in your domain sec... Hi @jamietetlow  As far as I know, you should not be getting the header "X-Frame-Options:SAMEORIGIN" by default - that is something you would turn on in your domain sec... Developers Jun 28, 2024 //START END-USER CONFIGURATION //------------------------------ //selectors for hover card triggers var allHoverCardTriggers = '.author-name-link,.friend-list .friend a,.username a,.avatar,.user-avatar,.author-img, .authors a, .messageauthorusername a, a.lia-user-name-link, .js-latest-post-by-from a, .user-online-list li a, a.UserAvatar, .customUsersOnline a, #authors a,.dashboard-followers a.user-name, .dashboard-following a.user-name,.author-login-wrapper a, .hb-leaderboard a, .author-img-floated'; // Forward calling page's URL params to endpoint URL as well, helps with testing! var params = (new URL(location.href)).searchParams; var userApiUrl = '/plugins/custom/hubspot/hubspot/hovercardendpoint?' + ((params.set('user_id', '') == []._) && params.toString()); if($('.hover-card-container').length<1){ $('body').append('
'); var cardWrapper = $('.hover-card-container'); var error = false; var thisUserID = ''; var thisUserLogin = ''; var userLink =''; var cardTimer; var leaveTimer; function mouseenter(Elem) { var thisEl = Elem; cardTimer = setTimeout(function(){ var docWidth = $(document).width(); var rightSide = false; var userLink = thisEl.attr('href'); if($('.ViewProfilePage').length && $('img.lia-user-avatar-profile',thisEl).length){thisUserID = '';} else if(thisEl.attr('href')=='#' || thisEl.attr('href')=='' || !userLink.match('viewprofilepage')){ return false;} else{ var thisLen = (userLink).split('/'); thisUserID = (thisLen)[thisLen.length-1]; var thisCard = $('.profileCard[data-user='+thisUserID+']',cardWrapper); var cardId = 'userProfileCard-'+ thisUserID; var addAttr = thisEl.attr('aria-describedby',cardId); var thisElTopOffset = Math.round(thisEl.offset().top+(thisEl.height()/2)+30); var thisElbottomoffset = "auto"; var className = ""; var winHeight = $(window).height(); var elOffset = thisEl.offset(); var scrollTop = $(window).scrollTop(); var elementOffset = thisEl.offset().top; var distanceTop = (elementOffset - scrollTop); var distanceBottom = (winHeight + scrollTop) - (elOffset.top + thisEl.outerHeight(true)); var distanceLeft = Math.round(thisEl.offset().left); var bodyHight = $('body').height(); var topParam = ''; var bottomparam = ''; var position = ''; var className = 'topArrow'; cardId if(distanceBottom < 300 ){ if(distanceLeft < 59){ thisCard.removeClass('bottomArrow'); var className = 'leftArrow'; var distanceLeft = (distanceLeft)+(39); var thisElTopOffset = (thisElTopOffset)-(150); }else{ var thisElTopOffset = (thisElTopOffset)-(301); var className = 'bottomArrow'; thisCard.removeClass('topArrow'); thisCard.removeClass('leftArrow'); var distanceLeft = (distanceLeft)-(45); else{ if(distanceLeft < 59){ thisCard.removeClass('topArrow'); var className = 'leftArrow'; var distanceLeft = (distanceLeft)+(39); var thisElTopOffset = (thisElTopOffset)-(150); }else{ thisCard.removeClass('leftArrow'); thisCard.removeClass('bottomArrow').addClass('topArrow'); var distanceLeft = (distanceLeft)-(45); if(thisCard.length && $('.profileCard[data-user='+thisUserID+'] .preloader',cardWrapper).length<1){ $('.profileCard',cardWrapper).hide(); thisCard.addClass(className); rightSide?thisCard.addClass('rightArrow'):thisCard.removeClass('rightArrow'); thisCard.delay(0).css({'top':(thisElTopOffset),'left':distanceLeft,'bottom':thisElbottomoffset}).fadeIn(); } else { var ajaxReturn = ''; //just in case thisCard.remove(); //hover card wrapper markup var rightArrowClass = rightSide?'rightArrow':''; if(thisElTopOffset != "auto"){ topParam = 'px'; if(thisElbottomoffset != "auto"){ bottomparam = 'px'; var profileCardHtml = '