nginx---rewrite
2017-08-16 15:27
68 查看
nginx 提供的 rewrite功能使用nginx提供的全局变量或者自定义变量,结合正则表达式对url进行重写和重定向 eg:
location / { # 重写规则信息 error_log logs/rewrite.log notice; # 注意这里要用‘’单引号引起来,避免{} rewrite '^/images/([a-z]{2})/([a-z0-9]{5})/(.*)\.(png|jpg|gif)$' /data?file=$3.$4; # 注意不能在上面这条规则后面加上“last”参数,否则下面的set指令不会执行 set $image_file $3; set $image_type $4; }
location /data {# 指定针对图片的日志格式,来分析图片类型和大小access_log logs/images.log mian;root /data/images;# 应用前面定义的变量。判断首先文件在不在,不在再判断目录在不在,如果还不在就跳转到最后一个url里try_files /$arg_file /image404.html;}
对于[code]/images/ef/uh7b3/test.png 的请求根据 ,根据这个规则,
rewrite '^/images/([a-z]{2})/([a-z0-9]{5})/(.*)\.(png|jpg|gif)$' /data?file=$3.$4; 其中 $3 对应着test $4 对于着 png
整理之后就会变成
/data?file=test.png 根据 匹配规则会匹配到 location /data 然后看 /data/images/test.png 是否存在,存在则返回,不存在返回404
相关文章推荐
- Nginx Rewrite规则详解
- ThinkPHP5 Nginx下的配置——支持pathinfo访问和隐藏入口文件index.php的rewrite规则
- 实例讲解Nginx下的rewrite规则
- nginx配置location总结及rewrite规则写法
- CentOS安装Nginx 报错“configure: error: the HTTP rewrite module requires the PCRE library”解决办法
- nginx 重写 rewrite 基础及实例
- nginx配置location总结及rewrite规则写法
- nginx配置访问控制、rewrite应用、nginx代理
- nginx rewrite 参数和例子
- 前后端分离:利用nginx的rewrite解决跨域问题
- Nginx下codeigniter的rewrite规则配置
- nginx配置location总结及rewrite规则写法
- Nginx中rewrite实现二级域名、三级域名、泛域名、路径的重写
- nginx服务器 301重定向主页 rewrite配置
- nginx rewrite导致post数据丢失
- nginx rewrite 参数和例子
- nginx rewrite proxy_pass location实践及正则匹配
- upupw nginx服务器 rewrite设置
- Nginx的Rewrite的配置
- Nginx URL重写(rewrite)配置及信息详解