Nginx Rewrite 应用场景
前言:上一篇博客我们已经大概了解Nginx rewrite了,这次我们就不过多掰掰了,我们单刀直入,直接开搞!这次的实验应用场景可是实战类型的,实用性很强。干货教学~
1.场景一
我们先用yum安装一个nginx,然后再实现rewrite的功能
首先我们得先将官方的源给装进来,否则我们无法用yum 直接安装nginx
搞定后偶们就可以正常安装nginx了
查看一下nginx的配置文件,并进入主配置文件进行修改
然后我们可以修改域名
保存退出后,我们安装bind
进入后/127找到对应位置修改文件,将两个位置改成any
保存退出
找到下图的模板语句复制粘贴(5yy-复制, p-粘贴)
复制粘贴好修改后如下
保存退出
然后我们将文件改名成pig
进入文件修改
接下来开启服务关闭防火墙
开启nginx
接下里用另一台主机看看能不能解析
首先我们将首选的dns服务器选择好
接下来我们就可以用cmd解析了
能够解析,那我们打开网站应该也没有问题了
这个时候场景来了,这是个老域名,我们要用新域名了,但是老客户并不知道。老客户输入的还是这个老网址,但是需要他自己动跳转到新的网址,接下来我们就需要在配置文件修改文件
保存退出
接下来我们得在区域配置文件里面再多加个dog区域
再复制修改文件名
重启服务
接下来测试,你会发现你输入pig网址会进入dog
2.场景二
在允许的合法ip能正常访问我的网站,而那些不在我合法ip范围的ip,可以让他们访问到其他的或者我给他们指定的页面。
首先我们把上一次实验的配置文件修改的地方删掉防止影响
然后还得修改下配置文件,达到场景二需要的效果。我另一台主机的ip地址是192.168.58.131,我这作为尝试验证,设定允许访问的ip为192.168.58.130。其他设置的项目我也注释好了意思,配置也就是个if语句,大家根据注释应该也可以看得懂
保存退出
然后我们应该定义一个网页
接下来重启服务
接下来拿那台地址192.168.58.131的主机来测试
这是维护页面,说明成功了。如果想要成功访问页面这里可以提供两种办法。
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,注意保持域名跳转后的参数不变。
还是一样的,先进入配置文件
先把上一个场景的配置全部删掉
然后改配置
接下来就得改zone的配置了
重启服务
然后我们得指定下域名
接下来就是测试,我们打开另一台centos7主机
证明实验ok了
4.场景四
基于参数匹配的跳转,例如现在访问www.pig.com/100-(100|200)-100.html
跳转到www.pig.com页面
还是进入这个文件
删掉之前的配置
然后改配置
还有之前实验的zone文件也要改回来
下面重启服务
然后测试
试验成功
5.场景五
基于某一目录下的所有php页面都会跳转到首页面
还是到原来那个老地方
老样子,先删除原配置,再配置
重启服务
测试
实验成功
6.场景六
根据具体的页面去跳转主页面
还是那个老地方,继续改他,别忘了之前的配置改掉就行
重启服务
测试
实验成功