LNMP详解(十一)——Nginx URL重写原理

简介: LNMP详解(十一)——Nginx URL重写原理

今天继续给大家介绍Linux运维的相关知识,本文主要内容是Nginx的 URL重写原理与实战。

一、URL重写场景
Nginx的URL重写也被称为Rewrite,主要作用是实现当客户端对特定URL访问的时候,根据客户端的访问信息实现跳转到其他URL处。URL重写在现在的网站中经常常见,比如:
1、对搜索引擎的访问进行优化,利于搜索引擎抓取页面。
2、隐藏站点的真实URL地址,使得URL资源更加简介。
3、当网站升级时,通过URL重写功能,将网站重定向到其他页面。
4、手机和电脑在访问同一站点时,反馈不同的页面,以便使得网站页面使用手机和电脑不同分辨率,使得页面更加美观。

二、URL重写规则
在Nginx的URL Rewrite的配置中有三大模块,分别是Rewrite结尾标识符,Rewrite规则表达式和Rewrite变量。下面我就对这三大模块进行详细介绍。

(一)Rewrite结尾标识符
Nginx的Rewrite结尾标识符,主要用于Rewrite规则末尾,表示规则的执行属性。Nginx的Rewrite结尾标识符主要有以下四种:
1、last
该标记表示已经完成了rewrite匹配。
2、break
该标记表示当该规则匹配完成后,不再进行后续的规则匹配。
3、redirect
该标记表示向客户端返回302临时重定向,浏览器地址会显示跳转后的URL地址。
4、permanent
该标记表示向客户端返回301永久重定向,浏览器地址会保持不变。

(二)Rewrite规则表达式
Nginx的Rewrite表达式采用了perl语法,主要用于参数、字符串的匹配。常用的Nginx Rewrite规则表达式如下所示:
1、.
匹配除了换行符之外的任意一个符号
2、[abc]
匹配字符串abc
3、[^abc]
匹配除了abc之外的字符串
4、abc|cba
匹配字符串abc或者cba
5、?
表示匹配前面的字符0次或者1次
6、+
表示匹配前面的字符1次或者多次
7、*
表示匹配前面的字符0次或者多次
8、^
匹配字符串开始
9、$
匹配字符串结束
10、\n
表示对字符n进行转义

(三)Rewrite变量
Rewrite变量常用语匹配HTTP头信息,比如浏览器类型、主机名等等,常见的Rewrite变量如下:
1、HTTP_USER_AGENT
表示客户端用户使用的代理(即服务器)。
2、HTTP_REFERER
表示用户访问该页面的来源(即从哪个页面来跳转到该页面的)
3、HTTP_COOKIE
表示用户的COOKIE
4、HTTP_HOST
表示服务器的ServerName域名
5、HTTP_ACCEPT
表示客户端的浏览器支持的MIME类型
6、REMOTE_ADDR
表示客户端的IP地址
7、QUERY_STRING
表示URL中访问的字符串
8、DOCUMENT_ROOT
表示服务器发布目录
9、SERVER_PORT
表示服务器端口
10、SERVER_PROTOCOL
表示服务器端采用的协议
11、TIME_YEAR、TIME_MON、TIME_DAY
表示当前时间,以上三个参数分别表示年、月和日。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200
————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_40228200/article/details/122995910

目录
相关文章
|
1月前
|
Web App开发 编解码 运维
LNMP详解(十二)——Nginx URL重写实战
LNMP详解(十二)——Nginx URL重写实战
20 2
|
1月前
|
运维 前端开发 应用服务中间件
LNMP详解(八)——Nginx动静分离实战配置
LNMP详解(八)——Nginx动静分离实战配置
23 1
|
1月前
|
编解码 运维 搜索推荐
LNMP详解(十一)——Nginx URL重写原理
LNMP详解(十一)——Nginx URL重写原理
16 0
|
1月前
|
运维 监控 应用服务中间件
LNMP详解(十四)——Nginx日志详解
LNMP详解(十四)——Nginx日志详解
30 2
|
2月前
|
负载均衡 应用服务中间件 Linux
|
10月前
|
网络协议 应用服务中间件 Linux
【Nginx】第四章 Nginx配置实例-反向代理
【Nginx】第四章 Nginx配置实例-反向代理
234 0
|
10月前
|
缓存 应用服务中间件 nginx
【Nginx】第六章 Nginx配置实例-动静分离
【Nginx】第六章 Nginx配置实例-动静分离
154 0
|
存储 应用服务中间件 测试技术
Nginx反向代理工作原理简介与配置详解
Nginx反向代理工作原理简介与配置详解
250 0
|
缓存 负载均衡 前端开发
前端掌握Nginx(二)(上)
本文适合觉对nginx感兴趣的小伙伴阅读
|
缓存 负载均衡 算法
前端掌握Nginx(二)(下)
本文适合觉对nginx感兴趣的小伙伴阅读
前端掌握Nginx(二)(下)