2012-11-10 63 views
0

當我打開url http://mysite.com/base1/folder/時,我希望它顯示http://mysite.com/base2/folder.html的內容。文件夾folder中有一個index.html文件。.htaccess顯示/ base1 /文件夾/使用/base2/folder.html的內容

爲了更清楚,html文件folder.html駐留在文件夾base2

我的.htaccess文件沒有按照預期

RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^/base1/([^/]+)/(.+)$ /base2/$1.html [L] 

誰能告訴我不對我的.htaccess文件工作?

謝謝!

回答

1

你的正則表達式如下錯誤:

^/base1/([^/]+)/(.+)$ 
       ^^^ requires one or more characters 

這應該工作(接受任何以下/文件夾/)

^/base1/([^/]+)/ 

或者這(只接受/文件夾/)

^/base1/([^/]+)/$ 

此外,我會刪除兩個RewriteCond作爲你的規則。 (雖然他們不應該有任何傷害,如果/ base1 /不存在)

+0

我已經試過'^/base1 /([^ /] +)/'和'^/base1 /([^ /]] +)/ $'並刪除了2個'RewriteCond'但它仍然不起作用。不顯示「base2/$ 1.html」的內容。 – aye

+0

嗯,我會啓用日誌記錄:http://httpd.apache.org/docs/current/mod/core.html#loglevel也許帶來了一些 –

+0

嗨尼科,我很抱歉,這實際上是我的錯誤。瀏覽器緩存頁面,所以我沒有正確測試它。現在它工作正常:-) – aye

相關問題