2009-09-27 95 views
0

我剛剛從我的源代碼移植到Ubuntu服務器從Windows和我一直有幾個.htaccess的mod_rewrite問題。我爲Apache啓用了mod_rewrite。這裏是我目前的.htaccess.htaccess mod_rewrite問題

RewriteEngine On 

RewriteRule ^css/default/?$ css/default.css 
RewriteRule ^user/?$ user.php 
RewriteRule ^user/([A-Za-z0-9_]+)/?$ user.php?username=$1 

這裏是我遇到的問題的一些例子。出於某種原因,我可以訪問

http://localhost/css/default 

沒有問題,但是當我做

http://localhost/css/default/ 

它不能找到它。此外,訪問

http://localhost/user/hunter101/ 

似乎沒有註冊hunter101作爲GET了......任何建議?謝謝

回答

2

MultiViews可能會有一些衝突,因爲您的網址和文件的名稱非常相似。嘗試禁用它:

Options -MultiViews 
+0

這個修復了,謝謝! – axsuul 2009-09-27 19:53:23

+0

有趣...不錯的檢查Gumbo :) – 2009-09-27 22:51:12

0

難道你不應該逃避前鋒?

RewriteRule ^user\/([A-Za-z0-9_]+)\/?$ user.php?username=$1 

我可能是錯的。

+2

我很確定mod_rewrite不需要正斜槓來轉義。 – 2009-09-27 19:22:04

+0

此外爲了完整起見:第一個斜槓不應該逃脫嗎? – Gumbo 2009-09-27 19:25:38