Angular 7,IIS 7,C#.NET Core,FireFox
对于我的网站:https://www.example.com,如果用户使用https://example.com,x帧失败(注意没有www)
我正在构建的标题是:Headers.Add(“X-frame-options”,“ALLOW FROM https://www.example.com,https://example.com”);
我已经尝试了很多迭代,无论我尝试什么,我都无法让它同时工作:https://www.example.com https://example.com
不允许在一个ALLOW-FROM语句中声明多个域的通配符或列表
和Usage Design Pattern and Example Scenario for the ALLOW-FROM Parameter
- 想要在帧中呈现所请求内容的页面将其自己的原始信息提供给服务器,该服务器通过查询字符串参数提供要成帧的内容。
例如在URL上使用查询字符串。
- 服务器验证主机名是否符合其条件,以便允许页面由目标资源构成。例如,这可以通过查找允许构建页面的可信域名的白名单来实现。例如,对于Facebook“赞”按钮,服务器可以检查所提供的主机名是否与该“赞”按钮所期望的主机名匹配。
- 如果在步骤#2中满足适当的标准,则服务器在“X-Frame-Options:ALLOW-FROM”中返回主机名。
- 浏览器强制执行“X-Frame-Options:ALLOW-FROM”标头。
请注意,X-Frame-Options
被Content Security Policy (CSP)
取代,其中frame ancestors directive允许您提供列表。
也就是说,在www.example.com
和example.com
上托管相同的网站并没有多大意义。选择其中一个是规范的,并从另一个发出301
重定向到它。
然后你只需要在X-Frame-Options
中允许规范的那个。