xjc2694 发表于 2011-12-21 08:44

nginx做非80端口转发

<span class="Apple-style-span" style="color: rgb(74, 74, 74); line-height: 21px; font-family: Arial, Helvetica, 宋体; font-size: 12px; ">nginx做非80端口转发<div id="property" style="margin-top: 5px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 3px; padding-right: 3px; padding-bottom: 3px; padding-left: 3px; font-size: 12px; font-family: Arial, Helvetica, 宋体; border-top-width: 1px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; text-align: center; border-top-style: solid; border-top-color: rgb(204, 204, 204); color: rgb(68, 68, 68); ">2011-04-25 09:51:59&nbsp;&nbsp;www.hackbase.com&nbsp;&nbsp;来源:<a href="http://www.hackbase.com/tech/2011-04-25/63427.html#" target="_blank" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; color: rgb(68, 68, 68); text-decoration: none; " target="_blank">互联网</a></div><div class="introduce" style="margin-top: 5px; margin-right: 20px; margin-bottom: 5px; margin-left: 20px; padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; font-size: 13px; font-family: Arial, Helvetica, 宋体; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-style: initial; border-color: initial; text-align: left; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(128, 128, 128); border-right-color: rgb(128, 128, 128); border-bottom-color: rgb(128, 128, 128); border-left-color: rgb(128, 128, 128); background-color: rgb(249, 250, 251); color: rgb(68, 68, 68); ">  nginx可以很方便的配置成反向代理服务器   server {</div><div class="content_text" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 20px; padding-right: 20px; padding-bottom: 20px; padding-left: 20px; font-size: 14px; font-family: Arial, Helvetica, 宋体; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; text-align: left; line-height: 24px; color: rgb(68, 68, 68); ">  nginx可以很方便的配置成反向代理服务器<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  server {<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  listen 80;<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  server_name localhost;<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  location / {<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  proxy_pass&nbsp;<a href="http://147.16.24.175:9500/" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; color: rgb(68, 68, 68); text-decoration: none; " target="_blank">http://147.16.24.175:9500</a>;<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  proxy_set_header Host $host:80;<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  proxy_set_header X-Real-IP $remote_addr;<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  proxy_set_header Via "nginx";<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  }<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  }<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  但是如果nginx的监听端口不是默认的80端口,改为其他端口如81端口。<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  后端服务器中request.getServerPort()无法获得正确的端口,返回的仍然是80;<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  在response.sendRedirect()时,客户端可能无法获得正确的重定向url。<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  正确的配置方法为<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  在 $host之后加上端口号,如$host:81<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  server {<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  listen&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 83;<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  server_name&nbsp; localhost;<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  location / {<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  proxy_pass&nbsp;&nbsp;<a href="http://147.16.24.175:9500/" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; color: rgb(68, 68, 68); text-decoration: none; " target="_blank">http://147.16.24.175:9500</a>;<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  proxy_set_header&nbsp;&nbsp; Host&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $host:83;<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  proxy_set_header&nbsp;&nbsp; X-Real-IP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $remote_addr;<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  proxy_set_header&nbsp;&nbsp; X-Forwarded-For&nbsp; $proxy_add_x_forwarded_for;<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  proxy_set_header Via&nbsp;&nbsp;&nbsp; "nginx";<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  }<br style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 12px; font-family: Arial, Helvetica, 宋体; ">  }</div></span>
页: [1]
查看完整版本: nginx做非80端口转发