如何在tomcat中设置x frame选项

时间:2016-07-05 04:39:16

标签: tomcat

我发现它可以在Apache服务器中轻松设置: x-frame-options =在httpd-conf文件中允许

但是tomcat怎么样?我正在使用7.0.57版本

3 个答案:

答案 0 :(得分:5)

在Tomcat中,您需要使用过滤器:

首先,实施自己的Filter。像这样:

public class XFrameHeaderFilter implements Filter {
    public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws ServletException {
        ((HttpServletResponse) resp).setHeader("x-frame-options", "allow");
        chain.doFilter(req, resp);
    }
}

其次,将此过滤器作为web.xml的一部分:

<filter>
  <filter-name>x-frame-header</filter-name>
  <filter-class>XFrameHeaderFilter</filter-class>
</filter>
<filter-mapping>
  <filter-name>x-frame-header</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping>

答案 1 :(得分:0)

Tomcat仅支持7.0.63以上版本的配置。

答案 2 :(得分:0)

在tomcat 7.0.63之后

<filter>
    <filter-name>httpHeaderSecurity</filter-name>
    <filter-class>org.apache.catalina.filters.HttpHeaderSecurityFilter</filter-class>
    <init-param>
        <param-name>antiClickJackingOption</param-name>
        <param-value>SAMEORIGIN</param-value>
    </init-param>
</filter>

对于过滤器映射部分,我添加了。

<filter-mapping>
    <filter-name>httpHeaderSecurity</filter-name>
    <url-pattern>/*</url-pattern>
    <dispatcher>REQUEST</dispatcher>
</filter-mapping>