Nginx配置重定向和反向代理(转发)

#重定向

地址重定向:是指当使用者浏览某个网址时,将他导向到另一个网址的技术。常用在把一串很长的网址,转成较短的网址。因为当要传播某网站时,常常因为网址太长,不好记忆;又有可能因为换了网路的免费网页空间,网址又必须要变更,不知情的使用者还以为网站关闭了。这时就可以用网路上的转址了。这个技术使一个网页是可借由不同的统一资源定位符(URL)连结。

location ^~/server_context/history/ {
	rewrite ^/server_context/history/(.*) /server_context/$1 break;
	proxy_pass http://域名;
            
}

#反向代理

反向代理:是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。

location ^~/server_context/ {
	proxy_pass http://域名/server_context/;
}

值得一提的是,location段的^~是代表某个字符作为开头匹配,这里就是以/api/作为开头进行匹配URL规则。

^~ 与 ~ 并非简单的优先级关系,它们之间真正的关系是:如果匹配到的前缀匹配项中最长的一个带有 ^,则不再匹配正则()。

事实上,nginx 的 location 规则很难排出优先级,只能用文字描述:

只考虑了比较常用的 =、^、~*,其他的读者自行查阅。

1、先匹配 =,匹配到则停止,否则继续。
2、再匹配前缀匹配项,如果:
(a)有匹配项被匹配到,且最长的匹配项有 ^~,则停止匹配;
(b)有匹配项被匹配到,且最长的匹配项没有 ^~,则进行正则匹配;
©没有匹配项被匹配到,则进行正则匹配。
3、然后进行正则匹配(不分长短,写在前面的优先),一旦匹配到则将其作为匹配结果(上一步的结果被替换)。
最后,如果始终没有匹配成功则返回 404。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是宽宽呀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值