Nginx反向代理设置如下:
upstream admin {
server 127.0.0.1:8080;(将请求转发到的实际容器tomcat端口)
}
server {
listen 80;
server_name _;(这个地方设置需要反向代理的域名,如www.baidu.com)
proxy_set_header Host $host;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_read_timeout 120;
proxy_send_timeout 120;
access_log /alidata/log/nginx/access/admin.log;
location / {
proxy_pass http://admin;
proxy_intercept_errors on;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
error_page 404 /404.html;
location = /404.html {
root html;
}
}
Nginx反向代理的好处,可以将服务器的对外开放端口设置为统一的80端口,如现在的微信公众号开发,微信服务器要求第三方开放服务器端口必须为80端口。
Tomcat域名绑定项目:
<Host name="www.baidu.com" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Context path="" docBase="../webapps/baidu" debug="0" reloadable="true"/>
</Host>
docBase配置成某个具体的项目资源地址,可以将项目绑定上host name设置的域名。这样做的好处是可以省略项目地址,以域名来访问项目,如这个设置中,使用www.baidu.com来访问项目baidu。