应用场景1——基于域名的跳转
公司旧域名,因业务需求有变更,需要使用新域名www.kgc.com代替
1.不能废除旧域名2.从旧域名跳转到新域名,且保持其参数不变
部署环境
一台linux服务器(192.168.142.130)一台测试主机windows7
[root@localhost~]#rpm-uvhhttp://nginx.org/packages/centos/7/noarch/rpms/nginx-release-centos-7-0.el7.ngx.noarch.rpm
[root@localhost~]#yuminstallnginx-y
vim/etc/nginx/conf.d/default.conf修改默认配置文件
server_namewww.accp.com;修改主机名
access_log/var/log/nginx/www.accp.com-access.logmain;开启日志服务
3,安装bind解析服务
[root@localhost~]vim/etc/named.conf
listen-onport53{any;};监听所有
allow-query{any;};允许所有
5,修改区域配置文件(named.rfc1912.zones)
[root@localhost~]#vim/etc/named.rfc1912.zones配置区域配置文件
file"accp.com.zone";accp区域数据配置文件
};
6,修改区域数据配置文件(accp.com.zone)
[root@localhost~]#cd/var/named/
[root@localhostnamed]#cp-pnamed.localhostaccp.com.zone复制模板
[root@localhostnamed]#vimaccp.com.zone修改区域配置文件
wwwina192.168.142.130本机地址
[root@localhostnamed]#systemctlstartnamed开启dns服务
[root@localhostnamed]#systemctlstopfirewalld.service关闭防火墙
[root@localhostnamed]#setenforce0
[root@localhostnamed]vim/etc/nginx/conf.d/default.conf修改配置文件
access_log/var/log/nginx/www.accp.com-access.logmain;
if($host="www.accp.com"){匹配如果域名是老域名
rewrite^/(.*)$http://www.kgc.com/$1permanent;则永久设置跳转新域名
root/usr/share/nginx/html;
indexindex.htmlindex.htm;
}
9,添加新域名解析
[root@localhostnamed]#vim/etc/named.rfc1912.zones
file"kgc.com.zone";accp区域数据配置文件
[root@localhostnamed]#cp-p/var/named/accp.com.zone/var/named/kgc.com.zone
复制区域数据配置文件为kgc的数据配置文件
[root@localhostnamed]#systemctlrestartnamed重启解析服务
[root@localhostnamed]cd/etc/nginx/conf.d/
[root@localhostconf.d]#vimdefault.conf
access_log/var/log/nginx/www.accp.com-access.logmain;
set$rewritetrue;设置变量为真
if($remote_addr="192.168.142.120"){

if($rewrite=true){匹配非法ip,跳转到main的网页
location=/main.html{精确匹配
root/usr/share/nginx/html;站点路径
root/usr/share/nginx/html;
indexindex.htmlindex.htm;
}
2,创建非法ip站点及main的网页页面
[root@localhostconf.d]#cd/usr/share/nginx/html/切换到站点中
[root@localhosthtml]#vimmain.html编辑非法ip访问网页内容
<h1>thisistestweb</h1>
[root@localhosthtml]cd/etc/nginx/conf.d/
[root@localhostconf.d]#vimdefault.conf修改默认配置文件
server_namebbs.accp.com;修改服务名称
access_log/var/log/nginx/www.accp.com-access.logmain;
location/post{用location匹配post目录
rewrite(.+)http://www.accp.com/bbs$1permanent;永久重定向跳转
}
2,修改dns的区域数据配置文件(accp.com.zone)
[root@localhostconf.d]#cd/var/named/
[root@localhostnamed]#vimaccp.com.zone修改区域数据配置文件
[root@localhostnamed]#systemctlrestartnamed重启解析服务
[root@localhostnamed]#systemctlrestartnginx重启nginx服务
[root@localhostnamed]#echo"nameserver192.168.142.130">/etc/resolv.conf
将解析服务器地址放到本地解析配置文件中
[root@localhost~]#cd/etc/nginx/conf.d/
[root@localhostconf.d]#vimdefault.conf
access_log/var/log/nginx/www.accp.com-access.logmain;
if($request_uri~^/100-(100|200)-(\d+).html$){
匹配正则开头为100-(100|200)-一次多次的整数html为结尾的
rewrite(.*)http://www.accp.compermanent;永久重定向跳转到主页
}
2,修改dns区域数据配置文件
[root@localhostconf.d]#vim/var/named/accp.com.zone修改区域数据配置文件
[root@localhostconf.d]#systemctlrestartnamed重启解析服务
[root@localhostconf.d]cd/etc/nginx/conf.d/
[root@localhostconf.d]#vimdefault.conf修改默认配置文件
access_log/var/log/nginx/www.accp.com-access.logmain;
location~*/upload/.*\.php${匹配不分大小写,匹配upload后零次或多次以.php为结尾的
rewrite(.+)http://www.accp.compermanent;跳转到首页
[root@localhostconf.d]cd/etc/nginx/conf.d/
[root@localhostconf.d]#vimdefault.conf修改nginx默认配置文件
access_log/var/log/nginx/www.accp.com-access.logmain;
location~*^/abc/123.html{匹配某一个特定的网页
rewrite(.+)http://www.accp.compermanent;跳转到首页
[root@localhostconf.d]#systemctlrestartnginx重启nginx服务
2,测试网页
以上就是NginxRewrite模块应用的场景有哪些的详细内容,更多请关注主机测评网其它相关文章!
本文来源:国外服务器--NginxRewrite模块应用的场景有哪些(nginxrewrite作用)
本文地址:https://www.idcbaba.com/guowai/3271.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 1919100645@qq.com 举报,一经查实,本站将立刻删除。



