前言:
此刻同学们对“apache设置可跨域访问”大概比较关心,小伙伴们都需要知道一些“apache设置可跨域访问”的相关资讯。那么小编同时在网上汇集了一些有关“apache设置可跨域访问””的相关知识,希望朋友们能喜欢,大家一起来学习一下吧!最近在一个项目中,使用<iframe>标签引用另一个项目站点的页面时,提示"Refused to display '; in a frame because it set 'X-Frame-Options' to 'sameorigin'."。这是引用资源X-Frame-Options响应头配置导致的。
X-Frame-Options
X-Frame-Options HTTP 响应头是用来给浏览器指示允许一个页面可否在 <frame>,</iframe> 或者 <object> 中展现的标记。网站可以使用此功能,来确保自己网站的内容没有被嵌套到别人的网站中去,也从而避免了点击劫持 (ClickJacking) 的攻击。
一般有三个参数:
DENY:表示该页面不允许在frame中展示,即便是在相同域名的页面中嵌套也不允许;SAMEORIGIN:表示该页面可以在相同域名页面的frame中展示;ALLOW-FROM uri:表示该页面可以在指定来源的frame中展示。
Tomcat配置X-Frame-Options
在tomcat的conf/web.xml中加入以下配置:
<filter> <filter-name>httpHeaderSecurity</filter-name> <filter-class>org.apache.catalina.filters.HttpHeaderSecurityFilter</filter-class> <init-param> <param-name>antiClickJackingEnabled</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>antiClickJackingOption</param-name> <param-value>SAMEORIGIN</param-value> </init-param> <init-param> <param-name>blockContentTypeSniffingEnabled</param-name> <param-value>false</param-value> </init-param> <async-supported>true</async-supported> </filter> <filter-mapping> <filter-name>httpHeaderSecurity</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
若允许跨域访问,需要修改antiClickJackingOption值:
<init-param> <param-name>antiClickJackingOption</param-name> <param-value>ALLOW-FROM</param-value> </init-param> <init-param> <param-name>antiClickJackingUri</param-name> <param-value>*</param-value> </init-param>
标签: #apache设置可跨域访问