设置x-frame-options以允许和禁止某些URL构建页面

时间:2015-09-16 08:47:59

标签: apache .htaccess clickjacking

我想阻止我的网站被其他人点击劫持。所以在我的.htaccess文件中,我放置了这段代码(工作正常):

Header set X-Frame-Options SAMEORIGIN

我的网站现在不会受到互联网上任何网站的影响。但是,我最近开发了一个移动应用程序,在我的网站托管的about-us下获取页面(我的网站包含www.mywebsite / about-us / author,www.mywebsite / about-us / company)以显示相同的详细信息。该应用程序。所以我做的是在.htaccess文件中添加了一行:

SetEnvIf REQUEST_URI ^about-us/$ aboutus_page
Header set X-Frame-Options SAMEORIGIN env=!aboutus_page

除了mywebsite / about-us /"任何页面"

下的所有页面之外,我希望我的其余页面免于iframed

2 个答案:

答案 0 :(得分:0)

您可以在允许xframe的文件夹“ aboutus”中创建第二个htaccess文件。 因此它将覆盖外部htaccess文件。 如果您只想允许公司和验证者使用xframe,也可以将htaccess文件放在那里。

答案 1 :(得分:0)

至少在Apache 2.4中,%{REQUEST_URI}不适用于通常的SPA类型的URI。请改用%{THE_REQUEST}。然后SetEnvIf不太灵活,因此我建议仅使用//部分。刚刚测试了以下内容并起作用:

<If "! %{THE_REQUEST} =~ /.*about-us.*/">
  Header set X-Frame-Options SAMEORIGIN
</If>