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

目录
相关文章
|
23天前
|
缓存 JavaScript 安全
深度解析Nginx正向代理的原理与实现
深度解析Nginx正向代理的原理与实现
|
1月前
|
运维 应用服务中间件 Linux
LNMP详解(十三)——Nginx子页面详解
LNMP详解(十三)——Nginx子页面详解
18 3
|
1月前
|
Web App开发 编解码 运维
LNMP详解(十二)——Nginx URL重写实战
LNMP详解(十二)——Nginx URL重写实战
20 2
|
17天前
|
移动开发 前端开发 JavaScript
前端vue2、vue3去掉url路由“ # ”号——nginx配置(一)
前端vue2、vue3去掉url路由“ # ”号——nginx配置
49 0
|
17天前
|
前端开发 JavaScript 应用服务中间件
前端vue2、vue3去掉url路由“ # ”号——nginx配置(二)
前端vue2、vue3去掉url路由“ # ”号——nginx配置
47 0
|
3天前
|
安全 网络协议 应用服务中间件
一文读懂HTTPS⭐揭秘加密传输背后的原理与Nginx配置攻略
一文读懂HTTPS⭐揭秘加密传输背后的原理与Nginx配置攻略
|
3天前
|
网络协议 应用服务中间件 nginx
nginx 302 301 设置 url 转跳 nginx 资源重定向 nginx tcp 和 http 转发
nginx 代理后端网站,和 网站资源目录重定向到其他连接地址
39 3
|
3天前
|
应用服务中间件 nginx
Nginx的referer参数的用法和原理
总结:referer参数可以用于Nginx配置,以限制或允许特定来源网站的访问,提高安全性或控制流量。它通过valid_referers指令来定义合法的Referer来源,并根据配置对请求进行处理。但需要注意,Referer字段内容可以被伪造,因此不应作为唯一的安全措施。
15 0
|
5天前
|
开发框架 搜索推荐 中间件
中间件应用路由和URL重写
中间件应用路由和URL重写
12 3
|
20天前
|
安全 应用服务中间件 网络安全
SSL原理、生成SSL密钥对、Nginx配置SSL
现在,你的Nginx虚拟主机应该已经配置了SSL,可以通过HTTPS安全访问。确保在生产环境中使用有效的SSL证书来保护通信的安全性。
32 0

热门文章

最新文章