Nginx Rewrite规则

Rewrite 主要的功能就是实现url的重写。Nginx的Rewrite的规则采用pcre perl 兼容正则表达式的语法进行规则匹配。

所以需要Rewrite,编译必须安装pcre库

Nginx Rewrite 规则的相关指令

if(!-f $request_filename){# 访问的不是文件

rewrite ^/(.*)\.html  /$1.php break;

}

break指令

表示完成该规则。不再处理rewrite指令。

if 指令  

判断指令。

return 指令

返回状态码

return 404; 返回一个404

rewrite 指令

rewrite 用到的变量

$args 参数

$content_length 响应头长度

$content_type 类型

$document_root 根目录

$host 主机名

$http_user_agent 用户的浏览器agent

$http_cookie cookie

$request_body 请求头

$remote_addr 页面地址

$request_method 请求方式

$request_filename 请求的文件名

$server_protocol 协议

$server_addr server地址

$server_port 服务器端口

常见的rewrite 例子

1.禁止目录访问

location ~ ^/templates{

 deny all;

break;

}

2.设置静态文件的缓存时间

location ~ .*\.(gif|jpg|png|bmp|swf){

expires 30d;#缓存30天

}

3.仿盗链

location ~ .*\.(gif|jpg|png|bmp|swf){

valid_referers none blocked www.xxx.com

if($invalid_referer){

 return 403;

}

}

 

posted @   闲云-野鹤  阅读(366)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示