一文读懂Nginx与vpn反向代理

什么是Nginx?

Nginx是俄罗斯程序员Igor Sysoev开发的轻量级Http服务器

Nginx有什么用

正向代理、反向代理、web服务器、负载均衡器、邮件服务器等

正向代理与vpn

客户端安装正向代理软件,客户端发送请求到代理服务器,再由代理服务器去访问目标网站,隐藏自己真实的ip。∑(●ΦДΦ●)这个操作是不是很眼熟,没错这就是你们用的vpn。大天朝的那个墙啊,墙内的人想出去,墙外的人想进来。防火墙之父,曾经开通新浪微博,结果3小时内,上万人留言过来骂(●`Д´●)ツ┏━┓,直接把他的微博骂关闭了。

正向代理图

反向代理

客户端发送请求到反向代理服务器,反向代理服务器再将请求转发给内部网络的服务器,隐藏的是内部服务器的ip。这篇文章主要讲反向代理的配置,啥,你说为什么不讲正向服务器,大家都很感兴趣!因为我还不想进局子里喝茶,_(:зゝ∠)_

反向代理

Nginx的Location匹配规则

在Nginx安装目录conf文件夹下,有nginx.conf文件,下面来讲解一下nginx.conf文件中的反向代理Location配置规则

Location配置规则分为四个级别:

1.最优先:完全匹配 =/xxx

2.第二优先级:^~ /xxx,代表以xxx开头的路径

3.第三优先级:正则表达式,如 ~ /\w 代表匹配数字字母下划线

4.最弱优先级别:/ ,任意以/开头的路径

    server {
        listen       80;
        server_name  localhost;
        
        // 最优先级
        location =/first {
            proxy_pass http://127.0.0.1:8081 ;
        }
        //第二优先级
        location ^~ /first2 {
            proxy_pass http://127.0.0.1:8082 ;
        }
        //第三优先级
        location ~ /[a-z] {
            proxy_pass http://127.0.0.1:8083 ;
        }
        location ~ /\w {
            proxy_pass http://127.0.0.1:8084 ;
        }
        //最弱的优先级
        location / {
            proxy_pass http://127.0.0.1:8080 ;
        }

按照上面的Location匹配规则,

如果输入http://localhost/first,因为精准匹配,所以会转到http://127.0.0.1:8081/first

如果输入http://localhost/first2 或者 http://localhost/first2123 ,会转到http://127.0.0.1:8082/first2或者http://127.0.0.1:8082/first2123

如果输入http://localhost/second,会转到http://127.0.0.1:8083/second ,因为匹配规则级别相同的情况下,以匹配程度最高的为准,但是匹配程度相同情况下,以写在最上面的那一条规则为准。

如果你想要反向代理的时候,http://localhost/first直接转成proxy_pass http://127.0.0.1:8081,不向后面追加/first,那么可以采用以下方式进行配置:

    server {
        listen       80;
        server_name  localhost;
        
        // 最优先级
        location =/first/ {
            proxy_pass http://127.0.0.1:8081/;
        }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值