0
我在godaddy託管的兩個htaccess文件有問題。我在同一個託管多個域,因此我USEN htaccess的,我發現,哪些是偉大的工作:htaccess重寫錯誤
RewriteEngine On
RewriteBase/
# To redirect www.site1.com to /site1/
RewriteCond %{REQUEST_URI} !^/site1/
RewriteCond %{HTTP_HOST} ^(www\.)?site1\.www\.
RewriteRule ^(.*)$ site1/$1 [L]
這是偉大的,因爲它重定向誰去是site1.com到/ site1的/我有頁爲該目錄中的site1。事實上,我有這三個其他域名,他們工作得很好(該文件夾隱藏在網址欄中)。
我的問題是,我添加了一個新的域(site2.com),這是一個Zend應用程序。因此它有它自己的htaccess來重寫url(用於以更好的方式在url中傳遞參數)。對於這一個它不起作用。事實上,我被重定向回到/,並且我得到了一個沒有人應該能夠獲得的/index.html頁面。只是要注意:在Zend應用程序的根目錄是 'WWW':
第二htacess,內/ SITE2/www是
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
我不知道這是怎麼回事了。 htaccess命令不是相對路徑嗎?爲什麼它回到兩個級別(請記住它在/ site2/www和我得到的文件是在/index.php(測試))
其實我有這竟然是一個在這種情況下另一個錯誤:在第二的RewriteCond第一htaccess文件指向www \。這是因爲zend公共網站的www文件夾而添加的。這是錯誤的(我不完全知道如何以及爲什麼),但是這個規則沒有被應用,這就是爲什麼我在/上得到索引。 www將被添加到RewriteRule中。修復它:)謝謝無論如何。 – 2010-09-22 18:43:42