解决方案 »

  1.   

    你是在 a、b 间用 socket 进行通讯?
      

  2.   

    不是,依然是b发送socket给b服务器 ,是的,a只是增加了nginx ,使用upstream 指向了b服务器,b服务器其实没有修改任何数据
    然后通过访问a的域名访问网站(网站是在b服务器的,b代码里面有发送socket给b本机服务器的)如果直接访问b网站(b的ip访问),是可以发送socket的,但是通过a的域名访问,就不行了
    不知道我有没有描述清楚,表达不是很好
      

  3.   

    既然是网站,那么客户端就是浏览器了,而浏览器是不能跨域的
    浏览器访问b(ip)后再 sock a(域名)这就是跨域了
      

  4.   

    可能我还没描述清楚,是网站在b服务器,网站b的代码有个socket的,还是发送给b服务器自己(b有另外一个java服务)
    并不是发送给a哦
      

  5.   

    而且,socket发送是内网ip发送的
      

  6.   

    如果全都是针对 b 的,那你干嘛要掺和进来个 a?socket发送是内网ip发送的 是什么意思?难道你的客户端在外网?
    外网是不能访问内网的(这是常识),你需要在跨网的服务器上做代理
      

  7.   


    搀和a是业务需求socket是网站php发送的,不是用户发送的,是在服务端,服务端php发送socket给java服务(都是在b服务器上)