我有兩個別名爲domain1.com和domain2.com的域名 目前他們都被定向到我的網站空間的根目錄。但是,我希望將它們分離爲獨立的頁面,並將domain2.com引導到具有不同內容的子文件夾中。mod_rewrite:將域名導入子文件夾(無vhost)
我知道正確的方法是使用Apache虛擬主機。但是,我的服務提供者不允許我訪問該功能,所以我必須使用mod_rewrite來解決它。
我需要的是指導www.domain2.com和domain2.com子文件夾/(它應該觸發index.php)。此外,www.domain2.com/file.txt應到子文件夾/ file.txt的,等等...這是我想出了:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} domain2\.com [NC]
RewriteRule ^(.*)$ subfolder/$1 [L]
</IfModule>
然而,當我運行它,然後轉到DOMAIN2。 COM,我得到500內部服務器錯誤和日誌文件說:
Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.
爲了測試這是怎麼回事我做了一個小PHP腳本,打印出它得到的字符串。 我還修改了規則:
RewriteRule ^(.*)$ subfolder/test.php?string=$1 [L]
現在,當我去domain2.com或domain2.com/asd,它打印出:子文件夾/ test.php的 不知怎的,進入遞歸和版畫本身。然而,如果我使用以下規則:
RewriteRule ^abc(.*)$ subfolder/test.php?string=$1 [L]
然後domain2.com/abcdef打印:DEF
我想不出什麼我做錯了。你有什麼建議嗎? 謝謝!
謝謝,這有幫助。它讓我走上了正確的軌道,並且找到了這個頁面:http://wiki.apache.org/httpd/RewriteLooping – Marek