使用VPN访问系统后地址栏为
如:http://202.202.11.11/proxy/192.168.44.44/crm页面代码
session.getAttribute("name")为空!

解决方案 »

  1.   

    你的 VPN 为什么是通过 HTTP 去访问的?我估计的原因是:代理是通过 192.168.44.44 去访问服务端的,因此,在 session 生成时的客户端 Cookie 写入的域是 192.168.44.44。HTTP 协议中 Cookie 值的发送不允许跨域!也就是说,当前请求的地址是 202.202.11.11,那只能发送 202.202.11.11 域中 Cookie 的数据,是不能发送在 192.168.44.44 中数据的,而关键的 SessionID 数据写在了 192.168.44.44 域的 Cookie 下。这种问题你只要使用 FireBug、HttpFox 等 Firefox 插件看一下生成 SessionID 的响应头就知道了。可能有用的解决方案:1:在你机器的 Hosts 文件中添加一行数据:
    202.202.11.11  www.vpn.com2:再到 202.202.11.11 的机器上(当然了,你要能在这台机器上修改)的 Hosts 中加一行
    192.168.44.44  www.vpn.com重启浏览器后,你通过 http://www.vpn.com/proxy/www.vpn.com/crm 访问理论上是可行的
      

  2.   

    按照你的说的方法1,改了hosts文件,不行。
      

  3.   


    无法登录代理服务器,谢谢你。Enjoy