zoukankan      html  css  js  c++  java
  • Nginx配置* rewrite King

    一,重定向功能

    Rewrite是Nginx服务器提供的一个重要的功能,它可以实现URL重定向功能。

    rewrite regex replacement [flag];

    rewrite的含义:该指令是实现URL重写的指令。
    regex的含义:用于匹配URI的正则表达式。
    replacement:将regex正则匹配到的内容替换成 replacement。
    flag: flag标记。

    flag有如下值:

    last: 本条规则匹配完成后,继续向下匹配新的location URI 规则。(不常用)
    break: 本条规则匹配完成即终止,不再匹配后面的任何规则(不常用)。
    redirect: 返回302临时重定向,浏览器地址会显示跳转新的URL地址。
    permanent: 返回301永久重定向。浏览器地址会显示跳转新的URL地址。

    列如:

    rewrite ^/(.*) http://www.baidu.com/$1 permanent;

    说明:
    rewrite 为固定关键字,表示开始进行rewrite匹配规则。
    regex 为 ^/(.*)。 这是一个正则表达式,匹配完整的域名和后面的路径地址。
    replacement就是 http://www.baidu.com/11这块了,其中1是取regex部分()里面的内容。如果匹配成功后跳转到的URL。
    flag 就是 permanent,代表永久重定向的含义,即跳转到 http://www.baidu.com/$1 地址上。

    location /tv {
       rewrite ^(.*) http://s.jktv.tv/wifi/test/video/short-video/ redirect;
    }

    二,防盗链

    注:因客户端请求可以模拟referers来源,所以该方法也不是最好的解决方式

    如下基本配置,当有网络连接对以 gif、jpg、png为后缀的图片资源时候、当有以swf、flv为后缀的媒体资源时、或以 rar、zip为后缀的压缩资源发起请求时,如果检测到Referer头域中没有符合 valid_referers指令的话,那么说明不是本站的资源请求。

    location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip)$ 该配置的含义是 设置防盗链的文件类型。

    valid_referers none blocked www.xxx.com www.yyy.com *.baidu.com *.tabobao.com; 可以理解为白名单,允许文件链出的域名白名单,如果请求的资源文件不是以这些域名开头的话,就说明请求的资源文件不是该域下的请求,因此可以判断它是盗链。因此如果不是该域下的请求,就会使用 Rewrite进行重定向到 http://www.xxx.com/images/forbidden.png 这个图片,比如这张图片是一个x或其他的标识,然后其他的网站就访问不了你这个图片哦。

    server {
      listen 8080;
      server_name xxx.abc.com
      location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip)$ {
        valid_referers none blocked www.xxx.com www.yyy.com *.baidu.com  *.tabobao.com;
        if ($invalid_referer) {
          rewrite ^/ http://www.xxx.com/images/forbidden.png;
        }
      }
    }
  • 相关阅读:
    mysq 日期相减
    说说时间观与时间管理——北漂18年(71)
    ionic之切换开关
    ionic之单选框
    SELECT ... LOCK IN SHARE MODE和SELECT ... FOR UPDATE locks在RR模式下可以看到最新的记录
    14.5.2.3 Consistent Nonlocking Reads 一致性非锁定读
    14.5.2.2 autocommit, Commit, and Rollback
    14.5.2 事务隔离级别
    对于唯一索引使用唯一条件搜索, InnoDB 只锁定找到的index record,不是它之前的区间
    mysql explain 解释
  • 原文地址:https://www.cnblogs.com/front-web/p/15556891.html
Copyright © 2011-2022 走看看