0
我的目標是模擬在.htaccess中使用mod_rewrite的虛擬主機,以便http://dog.animal.com內部映射到WEBROOT/public_html/dog /,cat.animal.com內部映射到WEBROOT/public_html/cat /,其中狗和貓在系統上建立用戶名。.htaccess(mod_rewrite)遞歸處理%{HTTP_HOST}
我(在WEBROOT的.htaccess
):
RewriteCond %{HTTP_HOST} ^[^.]+\.animal\.com$
RewriteRule ^(.+) %{HTTP_HOST}$1 [C]
RewriteRule ^([^.]+)\.animal\.com(.*) /public_html/$1$2
但在請求dog.animal.com我收到以下循環
紫禁城。您沒有權限訪問 /的public_html/dogpublic_html/dogpublic_html/dogpublic_html/dogpublic_html/..... 等等等等
顯然我忽視的東西愚蠢明顯。我會很感激任何指針!
(我應該說,在上面的例子中,有在格蘭區域文件A記錄兩個子域)
我試着修改替換字符串,但總是得到重複。不知何故,我的RewriteCond再次匹配,因此重複的文件路徑。我需要弄清楚如何在第一次迭代後停止。刪除'root'不會影響到這一點。謝謝,不過。 – Centzon
也許是黑客,但嘗試在最後一次重寫結束時放一個[L]以停止重寫 – crazyjul
「L」標誌會引發500錯誤。 – Centzon