了解Nginx的重定向说明
今天分享一个nginx的重定向规则,了解一下什么事重定向; 这个也是学习nginx的规则;了解含义、再做实验; 里面涉及到了一些正则或者是符号,这些之前就已经学习过,很容易忘记,回顾总结吧
1、什么是重定向?
重定向:最直观的理解就是:你去访问一个资源,结果直接找不到,网页上面就出现二楼404的报错;这个也是一个重定向的使用;
重定向的rewrite规则:
nginx的rewrite功能需要pcre软件的支持,即要通过perl兼容正则表达式语句进行规则匹配的;
默认参数编译的nginx就会支持rewrite的模块、但是也必须要pcre的支持
rewrite是实现url重写的关键指令,根据regex(正则表达式)部分内容,重定向到replacement,结尾是flag标记;
查看一下nginx
[root@Linux2 nginx-1.27.2]# ./configure --help | grep rewrite
--without-http_rewrite_module disable ngx_http_rewrite_module
#这里说明他默认是不编译的;
2、rewrite的语法
rewrite + <regex> + <replacement> + [flag];
正则 替代内容 flag标记
语法的详细讲解:
- 正则:perl兼容正则表达式语句进行规则匹配
- 替代内容:将正则匹配的内容替换成replacement
- flag标记:rewrite支持的flag标记
- last :本条规则匹配完成终止当前location的规则,继续向下匹配新的location URI规则
- break :本条规则匹配完成即终止,不再匹配后面的任何规则
- redirect :返回302临时重定向,浏览器地址会显示跳转后的URL地址,关闭服务,无法重定向。
- permanent :返回301永久重定向,浏览器地址栏会显示跳转后的URL地址,关闭服务,依然可以重定向,清除缓存失效。
更加直观的距离说明
[root@Linux2 nginx]# vim /data/nginx/conf/vhost/www.liangjiawei.net.conf
server {
listen 80;
server_name www.liangjiawei.net;
location / {
root /data/html/www/;
index index.html index.htm;
rewrite ^/(.*)$ http://blog.liangjiawei.net/$1 permanent;
}
}
分享环节:
hi,亲爱的朋友们:
- 感谢你们耐心完这个笔记,如果笔记中出现的一些软件包、资源找不到的可以直接留言&私聊,我看见了就回复;
- 资源免费共享;有需要滴滴,(仅仅是我有的)
我的坚持初衷:💕立志要成为一名架构师
- 不断地去坚持学,其中的各种各样的难度,不言而喻~!
- 坚持不是一件容易的事情,但它却是成功的关键。做起来吧~!
如果你也想要坚持:那么组团吧,咋们一块互相监督;一天一点分享也是进步;最怕就是孤军奋战!加油吧,追梦人~!