Cob*_*bby 18 apache mod-rewrite
我经常在PHP MVC应用程序中看到一个如下所示的Apache RewriteRule:
RewriteRule ^.*$ - [NC,L]
Run Code Online (Sandbox Code Playgroud)
关于Apache的文档说:
短划线表示不应执行替换(现有路径未经过触摸传递).当需要在不改变路径的情况下应用标志(见下文)时使用.
所以从我收集的内容中,您可以使用它来使用标志来转换路径,即[NC]用于RewriteRules吗?
有人可以解释一下这个破折号RewriteRule好一点吗?
max*_*lbu 12
看到这个答案:
mod_rewrite:这个RewriteRule有什么作用?
它本质上意味着"如果之前的RewriteConds匹配则不做任何事".当RewriteConds不匹配时,下一个RewriteRule将改为做其他事情.在我链接到的帖子的情况下,下一个RewriteRule重写包含"index.php"的URL.
我知道这有点老了,但它基本上说"嘿,我可能想要使用Rewrite,但对于与上述RewriteCond匹配的网址,请保留并停止."
EX:
# If file or directory exists, we wanna send them there
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule .* - [L]
# Otherwise, use our smart page handler!
RewriteRule ^(.*)\.php$ virtualPage.php?page=$1 [L]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13488 次 |
| 最近记录: |