2010-12-13 45 views
14

J'ai un site Web sécurisé HTTP Basic. Je cache un serveur d'application Tomcat avec mod_proxy. Puis-je supprimer l'en-tête HTTP Basic? L'application Tomcat lit l'en-tête et renvoie 401 non autorisé. L'authentification de base n'est pas nécessaire car l'application utilise des sessions de cookies. Donc, je pense que juste enlever les en-têtes serait bien.Supprimer l'en-tête d'authentification de base avec le proxy mod Apache

Répondre

24

Assurez-vous que mod_headers est activé. Une configuration exemple:

<VirtualHost *:80> 
     ServerName something.example.com 
     ServerAdmin [email protected] 

     ProxyRequests Off 
     ProxyPreserveHost Off 
     AllowEncodedSlashes On 
     KeepAlive Off 

     <Proxy *> 
      Order deny,allow 
      Allow from all 
     </Proxy> 

     <Location /> 
       AuthType Basic 
       AuthName "Authorized Users Only" 
       AuthUserFile /etc/apache2/passwd 
       Require valid-user 
     </Location> 

     RequestHeader unset Authorization 
     ProxyPass/http://localhost:5984/ example 
     ProxyPassReverse/http://localhost:5984/ 

     ErrorLog /var/log/apache2/something.example.com-error_log 
     CustomLog /var/log/apache2/something.example.com-access_log common 
</VirtualHost> 
10

Je viens d'avoir le même problème avec Apache en face d'un autre serveur Java essayant de faire auth de base, en ajoutant ce qui suit à ma config Apache semblait corriger:

RequestHeader unset Authorization 
+0

Avec Proxy? Ou quel est l'élément parent? – Jan

+0

thx. c'était suffisant pour moi sur Apache 2.4 avec le connecteur weblogic. – realgt