
利用.htaccess
規則,如果網域和文件路徑都符合條件,我將嘗試從子目錄載入文件,同時保持前端 URL 不變。
網址範例:
example.com/specificfile.xml
檔案本身位於非公共 Web 根目錄的子目錄中:
/var/www/feeds/specificfile.xml
在嘗試谷歌搜尋時,我得到了很多結果,RewriteBase
但這不是我想要的。我只需要為單一文件“重寫基本目錄”並保留前端 URL。
答案1
假設/var/www
是文檔根,那麼為了/feeds/specificfile.xml
在請求時提供服務/specificfile.xml
,您將在根文件中使用 mod_rewrite 執行以下操作.htaccess
:
RewriteRule ^specificfile\.xml$ feeds/$0 [L]
要使其正常工作,RewriteBase
必須根本不設定(最好)或設定為RewriteBase /
。
反向$0
引用只是為了節省重複 - 它引用與匹配的整個 URL 路徑RewriteRule
圖案, IE。specificfile.xml
。
請注意,如果您的.htaccess
檔案中有現有的 mod_rewrite 指令,那麼訂單事宜。 (例如,需要先進行外部/規範重定向。)