You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

同主机环境下Drupal嵌入静态网站iframe被拒的技术求助

问题分析与解决方案

为什么SAMEORIGIN不行?

X-Frame-Options: SAMEORIGIN的规则是仅允许当前域名下的页面嵌入该资源。你的Drupal网站和静态网站属于不同源(哪怕部署在同一主机,只要域名、端口、协议有一个不同,就判定为跨源),所以浏览器会拒绝嵌入。

需要修改的安全指令及操作步骤

你需要调整静态网站的跨域嵌入控制规则,允许Drupal网站的域名作为嵌入来源,具体有两种方案:

方案1:使用X-Frame-Options: ALLOW-FROM(兼容旧浏览器)

在静态网站的.htaccess文件中,替换你之前添加的代码为:

<IfModule mod_headers.c>
    Header set X-Frame-Options "ALLOW-FROM https://你的Drupal网站域名/"
</IfModule>

注:部分现代浏览器已逐步淘汰该指令,但对老版本浏览器仍有效。

方案2:使用Content-Security-Policy: frame-ancestors(现代标准方案)

这是当前推荐的跨域嵌入控制方式,优先级高于X-Frame-Options,在.htaccess中添加:

<IfModule mod_headers.c>
    Header set Content-Security-Policy "frame-ancestors 'self' https://你的Drupal网站域名/;"
</IfModule>
  • 'self'表示允许静态网站自身嵌入自己,可根据需求保留或删除
  • 替换https://你的Drupal网站域名/为实际的Drupal站点域名

验证修改

修改完成后重启Web服务器(或确保.htaccess规则生效),清除浏览器缓存后重新尝试嵌入iframe,即可正常显示。

内容的提问来源于stack exchange,提问作者hamza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 16:55:21