我有一个HTTP Basic安全网站。我用mod_proxy隐藏了一个Tomcat应用服务器。我可以删除HTTP Basic标头吗? Tomcat应用程序读取标头并返回未授权的401。不需要基本身份验证,因为应用程序使用cookie会话。所以我认为删除标题会很好。
答案 0 :(得分:26)
确保已启用mod_headers。示例配置:
<VirtualHost *:80>
ServerName something.example.com
ServerAdmin admin@example.com
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>
答案 1 :(得分:12)
我在另一个尝试进行基本身份验证的Java服务器前面遇到了与Apache相同的问题,将以下内容添加到我的Apache配置中似乎解决了这个问题:
RequestHeader unset Authorization