我们在内部服务器上有一个 Bugzilla 服务。我们正尝试通过充当代理的 Apache 服务器从外部访问它。
到目前为止,使用 mod_proxy 和 mod_proxy_html,我们可以通过代理服务器透明地获得 Bugzilla 服务。问题在于登录。
当用户提交凭证时,他会收到确认页面,表明他的身份已确认。但是,只要他点击链接,他就不再是用户,而是被重定向到身份识别页面。
我猜是因为某种原因,cookie/会话信息丢失了。这个问题需要在 Apache 代理端修复吗?还是需要在 Bugzilla 配置中修复?
感谢您的帮助。
这是 Apache 代理的 vhost 配置:
<VirtualHost *:*>
ProxyPreserveHost On
ProxyHTMLEnable On
ProxyHTMLLogVerbose On
LogLevel Info
ProxyRequests off
ProxyPass /bugzilla/ http://bugzilla.internal_domain.com/
ProxyPassReverse /bugzilla/ http://bugzilla.internal_domain.com/
ProxyHTMLURLMap http://bugzilla.internal_domain.com /bugzilla
ProxyHTMLURLMap / /bugzilla
</VirtualHost>
答案1
我似乎记得 10 年前大学网络上出现过这个问题。当时的“修复”方法是将 bugzilla.mozilla.org 添加到绕过反向代理的站点列表中。
我告诉你这些是为了让你知道:a)这可能是一个长期存在的问题,b)解决它可能是最简单的解决办法。
(在网络管理员修复它之前,我的修复方法是使用一个宏来插入我的用户名和密码并单击 Enter,每天我必须这样做 500 次...)