通过Nginx反向代理管理服务器上的多个web应用程序

  • 续接上篇初识Nginx,本篇分享一下Nginx常用功能点之一的反向代理的应用。应用场景为:管理服务器上的陆陆续续发布的各类web应用程序,做了个简单的web应用程序展示面板,参见下图:
    这里写图片描述
  • 本篇文章使用Nginx版本为1.11.7,说一下Nginx实际中常用的几条指令
D:\pub\nginx-1.11.7>tasklist /fi "imagename eq nginx.exe" 查看任务管理器内nginx.exe的运行信息
"nginx -s stop" quick exit
"nginx -s quit" graceful quit
"nginx -s reload" changing configuration, starting a new worker, quitting an 
old worker gracefully
"nginx -s reopen" reopening log files
  • 我的这个演练场景是这样的,”web应用程序展示面板”是通过Nginx反向代理加载出来的,”web应用程序展示面板”里的每个子系统也是通过Nginx反向代理加载出来的,Nginx端口为9440,大家可以直接通过这个link下载我本地配置好的Nginx配置文件下载。重点关注的的几点配置如下:
#nginx进程数,建议设置为等于CPU总核心数。
worker_processes  2;
events {
    #单个进程最大连接数(最大连接数=连接数*进程数)
    worker_connections  24;
}
 server {
        #监听端口
        listen       9440;
        #域名可以有多个,用空格隔开
        server_name  localhost 127.0.0.1;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;
        #对 "/" 启用反向代理
         location /9441/ {          
            proxy_pass http://localhost:9441/;
            proxy_redirect off;
            proxy_set_header X-Real-IP $remote_addr;
            #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
        location /8096/ {           
            proxy_pass http://localhost:8096/;
            proxy_redirect off;
            proxy_set_header X-Real-IP $remote_addr;
            #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
        location /8077/ {           
            proxy_pass http://localhost:8077/;
            proxy_redirect off;
            proxy_set_header X-Real-IP $remote_addr;
            #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }

运行效果参见下图(大家重点观察浏览器地址栏里的信息):
这里写图片描述
这里写图片描述

  • 附件:Nginx反向代理的四类配置方法:
四种分别用http://127.0.0.1/SubProjectDir/default.html 进行访问。
 第一种:
location /SubProjectDir/ {
     proxy_pass http://127.0.0.1:81/;
}
会被代理到http://127.0.0.1:81/default.html 这个url

第二咱(相对于第一种,最后少一个 /)
location /SubProjectDir/ {
     proxy_pass http://127.0.0.1:81;
}
会被代理到http://127.0.0.1:81/SubProjectDir/default.html 这个url

第三种:
location /SubProjectDir/ {
     proxy_pass http://127.0.0.1:81/ftlynx/;
}
会被代理到http://127.0.0.1:81/ftlynx/default.html 这个url。

第四种情况(相对于第三种,最后少一个 / ):
location /SubProjectDir/ {
     proxy_pass http://127.0.0.1:81/ftlynx;
}
会被代理到http://127.0.0.1:81/ftlynxdefault.html 这个url
  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值