我的webroot是example.com
。我在webroot下有兩個子目錄,分別命名爲sub1
和sub2
。裏面sub1
我已經放在以下.htaccess
:由Apache RewriteEngine困惑
RewriteEngine On
RewriteCond %{REQUEST_URI} test\.me$ [NC]
#RewriteRule ^(.*)$ http://example.com/sub2/foo.html [L]
RewriteRule ^(.*)$ /sub2/foo.html [L]
當有人試圖訪問http://example.com/sub1/test.me
,我希望他們能夠送達http://example.com/sub2/foo.html
。
以上.htaccess
不起作用。如果我使用完整路徑取消註釋RewriteRule,並使用相對於webroot的路徑註釋掉RewriteRule,則它幾乎按預期工作(右側顯示,但顯示的URL也從http://example.com/sub1/test.me
更改爲http://example.com/sub2/foo.html
,其中不想要)。
我無法理解爲什麼完整路徑幾乎可以工作,而相對於siteroot的路徑卻沒有。
如果有人可以解釋爲什麼我的方法不起作用,以及做這種重定向的「最佳做法」是什麼 - 我將不勝感激。