nginx 负载的服务器如何获得原来的url

flyindream 发布于 2014/04/29 17:30
阅读 4K+
收藏 1

 比如我访问http://admin.test.com/group1/M01/03/42/tzkno1NeKKGAWqswAACFiANCdgU266.jpg!small.jpg

会负载到两个ip


 upstream image_server {
  server   a:8080;
  server   b:8080;

}  

在 a服务器 tomcat 的java web  

String url = request.getRequestURL().toString().toLowerCase();获取到的url是

http://image_server/group1/m01/03/42/tzkno1nekkgawqswaacfiancdgu266.jpg!small.jpg

因为我用根据url进行处理数据,如果是原来的url会获得到用户admin,但nginx upstream后,导致admin获取不到,请问这块nginx如何配置才能获得到原始的url

ps:在用户进行创建的时候,都会分配一个唯一的二级域名,用户通过这个域名访问我就能得到是那个用户来访问。 



加载中
0
月影又无痕
月影又无痕

这个要传递主机头:

proxy_set_header Host $http_host;

0
f
flyindream

恩,搞定

      proxy_set_header Host $host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header REMOTE-HOST $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

返回顶部
顶部