Linux基础命令之Nginx中的rewrite功能(重新)

一、什么是Rewrite

        Rewrite也称URL Rewrite,即URL重写,就是把传入Web的请求重定向到其他URL的过程。

        1. URL Rewrite最常见的应用是URL伪静态化,是将动态页面显示为静态页面方式的一种技术。比如http://www.123.com/news/index.php?id=123 使用URLRewrite 转换后可以显示为 http://www.123.com/news/123.html

        2. 从安全角度上讲,如果在url中暴露太多的参数,无疑会造成一定量的信息泄漏,可能会被一些黑客利用,对你的系统造成一定的破坏,所以静态化的url地址可以给我们带来更高的安全性。

        3. 实现网站地址跳转、盗链。

二、Rewrite相关指令

        Nginx Rewrite相关指令有if、rewrite、set、return等。

        1、if指令

        if 的语法 if (condition) { … }

        应用于server和location环境内(if 与条件之间必须有空格)

        if 可以支持如下条件判断匹配符号

        ~ 为区分大小写匹配

        ~* 为不区分大小写匹配

        !~和!~* 分别为区分大小写不匹配及不区分大小写不匹配

        -f 和!-f 用来判断是否存在文件

        -d 和!-d 用来判断是否存在目录

        -e 和!-e 用来判断是否存在文件或目录

        -x 和!-x 用来判断文件是否可执行

        在匹配过程中可以引用一些Nginx的全局变量,更多的变量请参考         http://wiki.nginx.org/NginxHttpCoreModule 的 Variables 部分

        $args 请求中的参数;

        $document_root 针对当前请求的根路径设置值;

        $host 请求信息中的"Host",如果请求中没有Host行,则等于设置的服务器名;

        $limit_rate 对连接速率的限制;

        $request_method 请求的方法,比如"GET"、"POST"等;

        $remote_addr 客户端地址;

        $remote_port 客户端端口号;

        $remote_user 客户端用户名,认证用;

        $request_filename 当

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ximy1335

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值