1:Nginx Rewrite 基本标记(flags)
last- 基本上都用这个Flag
***相当于Apache李的【L】标记,表示完成rewirte,不在匹配后面的规则
break- 中止Rewrite.不在继续匹配
redirect -返回临时重定向的HTTP状态302
permanent-返回永久重定向的HTTP状态301
***原有的url支持正则,重写的url不支持正则
2:正则表达式匹配,其中:
* ~ 为区分大小写匹配
* ~* 为不区分大小写匹配
* !~和!~* 分别为区分大小写不匹配和不区分大小写不匹配
3: 文件以及目录匹配,其中:
-f 和!-f 用来判断是否存在文件
-d 和!-d 用来判断是否存在目录
-e 和!-e 用来判断是否存在文件或目录
-x 和!-x 用来判断文件是否可执行
将所有的linuxtone.org与net.linuxone.org域名全部自动跳转到
server{
listen 80;
server_name linuxtone.org net.linuxone.org ;
index index.html index. php;
root /date/www/wwwroot;
if($host !~ "www\.xiaonei\.com$"){
rewrite ^(.*) rewrite;
}
}
4:Nginx怒路自动加斜线:
if(-d $request_filename){
rewrite ^/(.*)([^/])$ permanent;
}
阅读(762) | 评论(0) | 转发(0) |