使用apache mod proxy删除基本身份验证标头

时间:2010-12-13 12:40:14

标签: apache mod-proxy http-basic-authentication

我有一个HTTP Basic安全网站。我用mod_proxy隐藏了一个Tomcat应用服务器。我可以删除HTTP Basic标头吗? Tomcat应用程序读取标头并返回未授权的401。不需要基本身份验证,因为应用程序使用cookie会话。所以我认为删除标题会很好。

2 个答案:

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