首页 >后端开发 >php教程 >Nginx部署时发现的问题

Nginx部署时发现的问题

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB原创
2016-07-29 09:13:341205浏览

1、在开发SSH项目时,nginx配置服务时,没把action也配置进去,nginx没有转发action请求。

原来如下:

#JSP直接给tomcat处理,因为nginx并不是servlet容器,没办法处理JSP
location ~ .*\.(jsp|do)$ {
	proxy_pass    http://mysvr ;
			
	#以下是一些反向代理的配置可删除.
	proxy_redirect    off;

	#后端的<strong>Web服务器</strong>可以通过X-Forwarded-For获取用户真实IP
	proxy_set_header Host $host:9999;
	proxy_set_header X-Real-IP $remote_addr;
	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}
修改成如下:
#JSP直接给tomcat处理,因为nginx并不是servlet容器,没办法处理JSP
location ~ .*\.(jsp|do|action)$ {
	proxy_pass    http://mysvr ;
			
	#以下是一些反向代理的配置可删除.
	proxy_redirect    off;

	#后端的<strong>Web服务器</strong>可以通过X-Forwarded-For获取用户真实IP
	proxy_set_header Host $host:9999;
	proxy_set_header X-Real-IP $remote_addr;
	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

2、nginx修改不是监听80端口(默认)时,如修改成9999端口,后台获取的端口还是80端口,这个是nginx要在设置真实IP和端口时也要加上修改的端口。

原来如下:

#JSP直接给tomcat处理,因为nginx并不是servlet容器,没办法处理JSP
location ~ .*\.(jsp|do|action)$ {
	proxy_pass    http://mysvr ;
			
	#以下是一些反向代理的配置可删除.
	proxy_redirect    off;

	#后端的<strong>Web服务器</strong>可以通过X-Forwarded-For获取用户真实IP
	proxy_set_header Host $host;
	proxy_set_header X-Real-IP $remote_addr;
	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}
修改后如下:
#JSP直接给tomcat处理,因为nginx并不是servlet容器,没办法处理JSP
location ~ .*\.(jsp|do|action)$ {
	proxy_pass    http://mysvr ;
			
	#以下是一些反向代理的配置可删除.
	proxy_redirect    off;

	#后端的<strong>Web服务器</strong>可以通过X-Forwarded-For获取用户真实IP
	proxy_set_header Host $host:9999;
	proxy_set_header X-Real-IP $remote_addr;
	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

以上就介绍了Nginx部署时发现的问题,包括了Web服务器方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn