1. 若是tomcat的lib目錄下的catalina.jar中有org.apache.catalina.filters.HttpHeaderSecurityFilterjava
能夠在tomcat下的conf裏的web.xml中增長如下過濾器web
<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> <async-supported>true</async-supported> </filter> <filter-mapping> <filter-name>httpHeaderSecurity</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
2. 若是沒有HttpHeaderSecurityFilter,須要本身寫過濾器,添加以下代碼,本身在項目中配置攔截。apache
HttpServletResponse response = (HttpServletResponse) sResponse; response.addHeader("x-frame-options","SAMEORIGIN");
X-Frame-Options 有三個值:tomcat
DENY
app
表示該頁面不容許在 frame 中展現,即使是在相同域名的頁面中嵌套也不容許。async
SAMEORIGIN
網站
表示該頁面能夠在相同域名頁面的 frame 中展現。url
ALLOW-FROM uri
spa
表示該頁面能夠在指定來源的 frame 中展現。code
換一句話說,若是設置爲 DENY,不光在別人的網站 frame 嵌入時會沒法加載,在同域名頁面中一樣會沒法加載。
另外一方面,若是設置爲 SAMEORIGIN,那麼頁面就能夠在同域名頁面的 frame 中嵌套。