Dot-Htaccess
如何在不重寫基礎的情況下從子目錄載入請求的文件
利用
.htaccess
規則,如果域和文件路徑都匹配標準,我正在嘗試從子目錄中載入文件,同時保持前端 URL 不變。網址範例:
example.com/specificfile.xml
該文件本身位於不是公共 Web 根目錄的子目錄中:
/var/www/feeds/specificfile.xml
在嘗試用Google搜尋時,我得到了很多結果,
RewriteBase
但這不是我想要的。我只需要為單個文件“重寫基目錄”並保留前端 URL。
假設
/var/www
是文件根目錄,那麼為了/feeds/specificfile.xml
在請求時提供服務,/specificfile.xml
您將在根.htaccess
文件中使用 mod_rewrite 執行以下操作:RewriteRule ^specificfile\.xml$ feeds/$0 [L]
為此,
RewriteBase
必鬚根本不設置(最好)或設置為RewriteBase /
.反向引用只是保存重複 - 它指的是與模式
$0
匹配的整個 URL 路徑,即。.RewriteRule
specificfile.xml
請注意,如果您的
.htaccess
文件中有現有的 mod_rewrite 指令,那麼順序很重要。(例如,外部/規範重定向需要先進行。)