小白干货:Nginx Rewrite的六个常见应用场景

Nginx Rewrite 应用场景

前言:上一篇博客我们已经大概了解Nginx rewrite了,这次我们就不过多掰掰了,我们单刀直入,直接开搞!这次的实验应用场景可是实战类型的,实用性很强。干货教学~

1.场景一

我们先用yum安装一个nginx,然后再实现rewrite的功能

首先我们得先将官方的源给装进来,否则我们无法用yum 直接安装nginx

小白干货:Nginx  Rewrite的六个常见应用场景

搞定后偶们就可以正常安装nginx了

小白干货:Nginx  Rewrite的六个常见应用场景

查看一下nginx的配置文件,并进入主配置文件进行修改

小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景

然后我们可以修改域名

小白干货:Nginx  Rewrite的六个常见应用场景

保存退出后,我们安装bind

小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景

进入后/127找到对应位置修改文件,将两个位置改成any

小白干货:Nginx  Rewrite的六个常见应用场景

保存退出

小白干货:Nginx  Rewrite的六个常见应用场景

找到下图的模板语句复制粘贴(5yy-复制, p-粘贴)

小白干货:Nginx  Rewrite的六个常见应用场景

复制粘贴好修改后如下

小白干货:Nginx  Rewrite的六个常见应用场景

保存退出

然后我们将文件改名成pig

小白干货:Nginx  Rewrite的六个常见应用场景

进入文件修改

小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景

接下来开启服务关闭防火墙

小白干货:Nginx  Rewrite的六个常见应用场景

开启nginx

小白干货:Nginx  Rewrite的六个常见应用场景

接下里用另一台主机看看能不能解析

首先我们将首选的dns服务器选择好

小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景

接下来我们就可以用cmd解析了

小白干货:Nginx  Rewrite的六个常见应用场景

能够解析,那我们打开网站应该也没有问题了

小白干货:Nginx  Rewrite的六个常见应用场景

这个时候场景来了,这是个老域名,我们要用新域名了,但是老客户并不知道。老客户输入的还是这个老网址,但是需要他自己动跳转到新的网址,接下来我们就需要在配置文件修改文件

小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景

保存退出

接下来我们得在区域配置文件里面再多加个dog区域

小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景

再复制修改文件名

小白干货:Nginx  Rewrite的六个常见应用场景

重启服务

小白干货:Nginx  Rewrite的六个常见应用场景

接下来测试,你会发现你输入pig网址会进入dog

小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景
2.场景二

在允许的合法ip能正常访问我的网站,而那些不在我合法ip范围的ip,可以让他们访问到其他的或者我给他们指定的页面。

首先我们把上一次实验的配置文件修改的地方删掉防止影响

小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景

然后还得修改下配置文件,达到场景二需要的效果。我另一台主机的ip地址是192.168.58.131,我这作为尝试验证,设定允许访问的ip为192.168.58.130。其他设置的项目我也注释好了意思,配置也就是个if语句,大家根据注释应该也可以看得懂

小白干货:Nginx  Rewrite的六个常见应用场景

保存退出

然后我们应该定义一个网页

小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景

接下来重启服务

小白干货:Nginx  Rewrite的六个常见应用场景

接下来拿那台地址192.168.58.131的主机来测试

小白干货:Nginx  Rewrite的六个常见应用场景

这是维护页面,说明成功了。如果想要成功访问页面这里可以提供两种办法。

1.将default.conf里的允许ip地址改成你想让他访问的主机的ip地址,如我这里,就该改成192.168.58.131,这样我那台地址为192.168.58.131的主机便可以正常访问

2.将主机地址直接改为nginx里允许的ip地址(前提是这个ip地址没被占用)

3.场景三

基于旧域名跳转到新域名后面加目录,例如现在访问的是www.pig.com,现在需要将这个域名下的发帖都跳转到www.pig.com/bbs,注意保持域名跳转后的参数不变。

还是一样的,先进入配置文件

小白干货:Nginx  Rewrite的六个常见应用场景

先把上一个场景的配置全部删掉

小白干货:Nginx  Rewrite的六个常见应用场景

然后改配置

小白干货:Nginx  Rewrite的六个常见应用场景

接下来就得改zone的配置了

小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景

重启服务

小白干货:Nginx  Rewrite的六个常见应用场景

然后我们得指定下域名

小白干货:Nginx  Rewrite的六个常见应用场景

接下来就是测试,我们打开另一台centos7主机

小白干货:Nginx  Rewrite的六个常见应用场景

证明实验ok了

4.场景四

基于参数匹配的跳转,例如现在访问www.pig.com/100-(100|200)-100.html

跳转到www.pig.com页面

还是进入这个文件

小白干货:Nginx  Rewrite的六个常见应用场景

删掉之前的配置

小白干货:Nginx  Rewrite的六个常见应用场景

然后改配置

小白干货:Nginx  Rewrite的六个常见应用场景

还有之前实验的zone文件也要改回来

小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景

下面重启服务

小白干货:Nginx  Rewrite的六个常见应用场景

然后测试

小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景

试验成功

5.场景五

基于某一目录下的所有php页面都会跳转到首页面

还是到原来那个老地方

小白干货:Nginx  Rewrite的六个常见应用场景

老样子,先删除原配置,再配置

小白干货:Nginx  Rewrite的六个常见应用场景

重启服务

小白干货:Nginx  Rewrite的六个常见应用场景

测试

小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景

实验成功

6.场景六

根据具体的页面去跳转主页面

还是那个老地方,继续改他,别忘了之前的配置改掉就行

小白干货:Nginx  Rewrite的六个常见应用场景

重启服务

小白干货:Nginx  Rewrite的六个常见应用场景

测试

小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景

实验成功

小结:做完这六个小场景,
小白干货:Nginx  Rewrite的六个常见应用场景
是不是感觉自己溜溜的?感觉自己好像也能做网站了似的?!哈哈,这六个场景的应用还是很实用的,基本上会装nginx就行了,剩下的就是要会改配置文件里的脚本就行。你说你不会写脚本?没关系,我也不会。都不会,那就来看我博客呗,哈哈,小白也能看懂我的博客哟~
小白干货:Nginx  Rewrite的六个常见应用场景小白干货:Nginx  Rewrite的六个常见应用场景 mc哟 发布了45 篇原创文章 · 获赞 7 · 访问量 2639 私信 关注
上一篇:nginx rewrite 指令last break区别最详细的解释


下一篇:如何解决部署SFB时报错End Error Message from rewrite_2.0_rt?