zoukankan      html  css  js  c++  java
  • .htaccess语法中RewriteCond和RewriteRule意义

    如果 xxx 匹配ooo 并且

    如果 xxx2 匹配ooo 并且

    那么 xxx3的访问 应该变为 xxx4

    举个例子:

    RewriteCond %{REQUEST_URI} ^.*$
    RewriteCond %{REQUEST_URI} ^/(?!pic).*$
    RewriteRule ^(.*)$ /frontend/web/$1

    代码解释:

    如果 字符串 %{REQUEST_URI} 是 除 " "以外的字符开头,并且出现零次或多次,并且除 " "以外的字符结尾

    如果 字符串 %{REQUEST_URI} 是以 / 开头 并且斜杠之后不是 pic字符 并且以除 " "以外的字符结尾

    那么 当前请求的url 符合规则 ^(.*)$ 就让请求地址变为 /frontend/web/$1

    假设:

    现在的请求是 www.example.com/index.html

    第一条 RewriteCond 是符合的 并且

    第二条 RewriteCond 是符合的

    根据 RewriteRule 请求应该变为 www.example.com/frontend/web/index.html

    在这里 %{REQUEST_URI} 就是 /index.html

    php的$_SERVER中就有这个key。

    再次假设:

    现在的请求是 www.example.com/pic/avatar/x.jpg

    第一条 RewriteCond 是符合的

    第二条 RewriteCond 是不符合的

    RewriteRule 不执行 请求依然是 www.example.com/pic/avatar/x.jpg

  • 相关阅读:
    说下vue工程中代理配置proxy
    说一下登陆页面的实现逻辑
    $router和router区别
    iframe中涉及父子页面跨域问题
    浅析闭包
    用户注册之短信验证
    vue.js(三)
    vue.js(二)
    vue.js(一)
    批量更改会员权限
  • 原文地址:https://www.cnblogs.com/buexplain/p/5011437.html
Copyright © 2011-2022 走看看