网站首页 > 技术教程 正文
rewrite ^/b/(.*)\.html /play.php?video=$1 break;
其中^匹配输入字符串的开始位置
.匹配除去\n之外的任何单个字符,*匹配前面字符的零次或者多次。
(.*)\.html 代表匹配所有的html网页。
$1取的是前面规则(.*)中匹配的字符串。
break是flag标记,本条规则匹配完成即终止,不再继续匹配后面的任何规则。
----我是华丽的分隔线-------
if(!-f $request_filename)
{
rewrite ^/img/(.*)$ /site/$host/images/$1 last;
}
!-f $request_filename 如果当前请求的资源文件路径不存在,那么执行rewrite重定向语句。
在nginx rewrite中,如果使用小括号(),那么在小括号之间的内容,可以在后面通过$1去引用。
rewrite ^/img/(.*)$ 就是把/img/以后的所有部分,当做了一组。$1就是重写的目标路径,这里用$1引用了前面正则表达式匹配的分组,即/img/后面的所有。这样的新路径就是除去/img/以外的所有,就达到了去除/img/前缀的目的。
last在重写路径结束以后,将得到了的路径重新进行一次路径匹配。
----我是华丽的分隔线----
break:遇到break就跳出,后面的语句不再执行。break的作用是完成当前的规则集,不再处理rewrite指令。
----我是华丽的分隔线----
if ($slow) {
limit_rate 10k;
break;
}
limit_rate限制向客户端传输响应的速率,用每秒字节数指定rate速率,0值禁用速率限制。
当重定向rewrite规则中有break时,不再执行break以下的rewrite规则。
但是当配置文件中有location 时,它还会去执行location{}段的配置,请求要去匹配这个location。
---我是华丽的分隔线-------
if( $http_user_agent ~ MSIE) {
rewrite ^(.*)$ /msie/$1 break;
}
如果“UA”包含MSIE,那么rewrite请求到/msie/目录下。
当请求中的User-Agent中包含MSIE时(~表示区分大小写)时,rewrite请求到/msie/$1 目录下,$1表示匹配到的URI。
如果客户端的浏览器为微软Microsoft IE浏览器,则rewrite请求到/msie/目录下。设置用户在使用IE浏览器的时候,去rewrite重定向到/msie/的目录下。
---我是华丽的分割线。
鼓励的话语:人要互相尊重,你敬我一尺,我还你一丈。小事情,却是大道理!
猜你喜欢
- 2025-05-15 raksmart洛杉矶共享主机怎么设置
- 2025-05-15 批量二级域名自动访问子目录 - apache重写(rewrite)
- 2025-05-15 带你轻松玩转linux
- 2025-05-15 Java面试题及答案最全总结(2025版持续更新)
- 2025-05-15 Linux下玩转nginx系列(三)---nginx日志配置文件说明
- 2025-05-15 用WordPress建站哪些插件会拖慢速度影响排名?
- 2025-05-15 Java面试题及答案总结(2025版持续更新)
- 2025-05-15 难道只有我懂Nginx/OpenResty详解,Nginx的rewrite模块指令?
- 2025-05-15 nginx rewrite规则详解
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- sd分区 (65)
- raid5数据恢复 (81)
- 地址转换 (73)
- 手机存储卡根目录 (55)
- tcp端口 (74)
- project server (59)
- 双击ctrl (55)
- 鼠标 单击变双击 (67)
- debugview (59)
- 字符动画 (65)
- flushdns (57)
- ps复制快捷键 (57)
- 清除系统垃圾代码 (58)
- web服务器的架设 (67)
- 16进制转换 (69)
- xclient (55)
- ps源文件 (67)
- filezilla server (59)
- 句柄无效 (56)
- word页眉页脚设置 (59)
- ansys实例 (56)
- 6 1 3固件 (59)
- sqlserver2000挂起 (59)
- vm虚拟主机 (55)
- config (61)
本文暂时没有评论,来添加一个吧(●'◡'●)