Dav*_*ese 16 regex mod-rewrite caret
虽然我可以打开Rewrite Logging并弄乱这个规则来弄清楚它做了什么(如果有的话),我打赌有人已经知道了.这是规则本身:
RewriteRule ^ - [L]
Run Code Online (Sandbox Code Playgroud)
这是在上下文中:
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
Run Code Online (Sandbox Code Playgroud)
我想这意味着"匹配一切".我曾经认为"匹配一切"将是一个点,使得更明显的是没有丢失的代码,并且如果插入符号是唯一的东西,则正则表达式会出错.所以我看到外面的机会,这意味着别的东西.
Mar*_*tin 20
^ 就像你说的那样,说"匹配任何东西"是一种有点非正统的方式- 意思是"不采取行动"[L]表示"最后一条规则",即RewriteRules在此之后停止处理我假设在此之后还有其他规则,因为RewriteCond/ RewriteRule表示如果当前请求是针对现有文件或目录,mod_rewrite则应忽略任何后续规则RewriteRules.
用代码表示,这相当于:
do_rewrites(req)
{
if (is_file(req) || is_dir(req))
return;
// other rules
...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4652 次 |
| 最近记录: |