problem
1、http默认端口为80
2、一台服务器有多个服务,都想监听80
3、有些服务限用指定端口,修改麻烦
4、外网访问域名时要加端口,很麻烦
solution
1、先在两个空闲的端口上分别部署项目(非80,假设是81和82)
// nginx.conf# test1项目配置server {listen 81;root /www/wwwroot/test1;index index.html;location / {}}# test2项目配置server {listen 82;root /www/wwwroot/test2;index index.html;location / {}}
2、内网进行端口转发(监听80端口)
// nginx.conf# nginx 81端口配置 (监听test1二级域名)server {listen 81;server_nametest1.gwj1314.space;location / {proxy_passhttp://localhost:81; # 转发}}# nginx 82端口配置 (监听test2二级域名)server {listen 82;server_nametest2.gwj1314.space;location / {proxy_passhttp://localhost:82; # 转发}}
example
实际转发的时候,记得加上JavaScript,css和图片等元素的转发。
server{listen 80;server_name ftp.gwj1314.space;index index.php index.html index.htm default.php default.htm default.html;root /www/wwwroot/chfs;location / {proxy_passhttp://localhost:81; # 转发}location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${proxy_passhttp://localhost:81; # 转发expires30d;error_log off;access_log /dev/null;}location ~ .*\.(js|css)?${proxy_passhttp://localhost:81; # 转发expires12h;error_log off;access_log /dev/null; }}
如果觉得《Nginx配置共用80端口|端口转发端口映射》对你有帮助,请点赞、收藏,并留下你的观点哦!