2016-01-25 19 views
12

Tıklatma işlemini önlemek için aşağıdaki kod snippet'ini tomcat web.xml dosyasına ekledim. bölümdeTomcat'ta Xframe seçeneği 7

dahili filtre, Eklediğim filtre haritalama kısmı için

<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> 

ekledik eklemek için.

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

düzenlemeden sonra ve (çerçevelerin içindeki hedef sayfasını açmak mümkün değildir), bu iki değişiklik, test sayfası (I <frame> hedef sayfasını açmak için çalışıyorum html sayfası) geçer yapım.
Ancak apache karşılama sayfası, yeni değişikliklerle birlikte 404 verir.

Bir şey kaçırıyorsam lütfen bana bildirin.

cevap

11

Ayrıca tomcat7 ve tam olarak aynı filtre ile bu sorunu vardı.

Yapmanız gereken ilk şey, CATALINA_BASE/logs/altındaki tomcat günlüklerini kontrol etmektir. Localhost.YYYY-MM-DD.log dosyasını bulun ve açın. Orada hatanın sebebini bulmalısın. Benim günlük dosyasında

bu hatayı vardı: Sonra HttpHeaderSecurityFilter yeni Tomcat Version 7.0.63 (see here) ilave edildi öğrendim

SEVERE: Exception starting filter httpHeaderSecurity 
java.lang.ClassNotFoundException: org.apache.catalina.filters.HttpHeaderSecurityFilter 

ama sürüm 7.0.52 (birini koşuyordu Ubuntu 14.04 LTS ile birlikte geliyor.

En yeni Tomcat sürümünü yükleyerek sorunu çözdüm ve şimdi filtre beklendiği gibi çalışıyor.