博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nginx 重写
阅读量:4322 次
发布时间:2019-06-06

本文共 993 字,大约阅读时间需要 3 分钟。

rewrite指令可在 server 块或者 location 块中配置。

语法:

rewrite regex replacement [flag];

1、rewrite 接收的 uri 不包含 host 地址,不包含参数。可通过全局变量$uri、$args获取。

2、flag:last、break、redirect、permannet

   last:中止在本location块中处理接收到的URI,并将此处重写的URI作为一个新的URI,使用其他 location 块进行处理。让所有的location块重新匹配和处理新的URI。

   break:将重写后的URI作为一个新的URI,在本块中继续进行处理。将重写后的地址在当前的location块中执行,不会将新的URI转向到其他location块。新的URI始终在同一个location块中。

  redirect:302临时重定向。

  permanent:301永久重定向。

3、rewrite_log

   rewrite_log on; 开启URL重写日志。以 notice 级别输出到 error_log指令配置的日志文件中。

 

通过重写防盗链:

1 server{ 2     listen 80; 3     server_name www.test.com; 4     location ~* ^.+\.(gif|jpg|png)${ 5          valid_referers none blocked server_name *.test.com; 6          if($invalid_referer){ 7              rewrite ^/ http://www.test.com/images/forbidden.png; 8          } 9      }      10 }

valid_referer指令设置有效的 referer,若referer有效则设置$invalid_referer为1,否则为0;

none表示没有referer;

blocked表示referer被防火墙或者代理服务器删除或伪装;

server_names设置一个或多个URL。

 

转载于:https://www.cnblogs.com/natian-ws/p/8955124.html

你可能感兴趣的文章
C语言运算符表
查看>>
网络调试 adb connect
查看>>
ormlite 文档
查看>>
修改root远程ssh登录权限
查看>>
保存cookies
查看>>
iOS酷炫动画效果合集
查看>>
[CSS] Scale on Hover with Transition
查看>>
状压DP(挑战程序设计竞赛)
查看>>
POJ 2386
查看>>
腾讯云“动态加速”与“CDN”的区别——浅谈对“动态加速”的理解(可能有误)...
查看>>
Spring源码学习笔记(5)
查看>>
Objective-C 日记⑧ 对象初始化
查看>>
mybatis中#{}与${}的区别
查看>>
RTP/RTSP/RTCP的区别和应用
查看>>
Adaboost算法简介
查看>>
在【此电脑】隐藏【设备和驱动器】中不需要的图标
查看>>
【Leetcode】【Medium】Palindrome Partitioning
查看>>
51单片机 | 实现数码管动态显示
查看>>
十进制向十六进制的转换
查看>>
练习JsonJquery查找数据
查看>>