
在我的 apache 網站上,我有以下重定向:
RewriteCond %{REQUEST_URI} !^/web/
RewriteRule ^(.*)$ /web/$1
它從根目錄重新導向到“Web”目錄。
這也會透過目錄的 .htaccess 運作/web/
嗎?
答案1
是的,它確實。 (假設.htaccess
尚未停用子目錄的覆蓋。)
RewriteCond %{REQUEST_URI} !^/web/ RewriteRule ^(.*)$ /web/$1
事實上,如果.htaccess
子目錄中的檔案包含 mod_rewrite 指令,那麼您不需要該RewriteCond
指令,因為子目錄中的 mod_rewrite 指令將覆蓋父目錄中的指令(預設),從而防止重寫迴圈。
請注意,在您發布的指令中缺少一個L
標誌,因此處理將首先繼續處理當前文件的其餘部分.htaccess
。
小一點,這嚴格來說是“重寫”,而不是“重定向”。儘管 Apache 文件確實提到了“內部重定向”。 「重定向」更常用來指外部的3xx 重定向。