也许有人可以帮我解决这个问题?我有一个网站,在互联网上被称为“www.mydomain.com”。这样的网络服务器,我无法触摸或更改。该站点在 BlueCoat 反向代理的内部称为 www.mydomain-internal.local。目前,该站点位于 BlueCoat 反向代理之后,该代理运行良好,但我希望它能够将其置于 Apache 反向代理后面,以便稍后使用 Mod_Sec 进行配置(但不是当前设置的一部分)。在查看 ZAP(以前的 Paros)时,我看到该站点正在运行 java 脚本。当我将客户端放在我的 Apache 反向代理的前面(互联网端)时,一切似乎都在工作(我什至收到一条消息,表明该站点正在加载 30% 到 60%)但最后,在显示完整内容之前,我显示以下错误:
“已安装新版本的应用程序,请使用“CTRL + F5”重新加载此页面”。
同样使用 ZAP,我可以清楚地看到,在 BlueCoat 后面时,_utma
和utmz
cookie 是在客户端写入的,但在 Apache 反向代理后面时却不是。
我也看到一个错误
"//EX[2,1,["com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException/3936916533","Type 'country.company.shared.rpc.GetCollection' 不能分配给 'com.google。 gwt.user.client.rpc.IsSerializable' 并且没有自定义字段序列化程序。出于安全考虑,不会反序列化此类型。”],0,5]"
当我想解决这个错误时,我发现应该通过修改网络服务器上的代码来解决这个错误,然后它才能在反向代理后面工作。但我认为在我的情况下,我的 apache 配置中的其他内容是错误的,因为该站点在 Bluecoat 反向代理(基本上也依赖于 Apache)之后运行良好。我在 apache 上的配置如下:
<VirtualHost *:80>
ServerName www.mydomain-internal.local
#ProxyRequests On
#ProxyVia On
#<Proxy *>
# Order deny,allow
# Allow from all
#</Proxy>
ProxyPass / http://www.mydomain.com/PDF/
ProxyPassReverse / http://www.mydomain.com/
# ProxyPass / ajp://www.mydomain.com/PDF/
# ProxyPassReverse / ajp://www.mydomain.com/
# ProxyPassReverseCookiePath /PDF/
# ProxyPassReverseCookieDomain www.mydomain-internal.local www.mydomain.com
# CacheDisable http://www.mydomain-internal.local/
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.mydomain-internal\.local$
RewriteRule /foo(.*)$ http://www.mydomain.com/$1 [P,L]
</VirtualHost>
有人可以帮助我吗,我可以单独在 Apache 上进行修改并且我的网站可以正常工作吗?