我从旧网站的一个旧网站上查看此规则,我从未见过它。
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?domain.com$ [NC]
RewriteCond %{REQUEST_URI} ^/extension1/(.*)$ [OR]
RewriteCond %{REQUEST_URI} ^/extension2/(.*)$ [OR]
RewriteCond %{REQUEST_URI} ^/extension3/(.*)$
RewriteRule ^(.*)$ - [L,R=404]
我看到如果我使用其中一个扩展程序进入域名,那就只有404了。
我认为发生的事情是,如果它与主机匹配,其中一个扩展,它只是404。我理解到最后一行的所有内容,因为-
抛弃了我。
-
在最后一条规则中做了什么?
由于
答案 0 :(得分:1)
-
表示“传递URI并且不执行任何操作”。它基本上对URI没有任何作用,只应用标志,在这种情况下返回404。
有关详细信息,请参阅“ - (破折号)”下的mod_rewrite documentation
破折号表示不应执行替换(现有路径未经过修改)。当需要在不改变路径的情况下应用标志(见下文)时使用。