2011-10-07 151 views
1

我開發一個web應用程序,人們可以創建配置文件。他們的個人資料存儲在:app/user/UserName。我想要的網址是這樣的:應用/用戶名,但不能因爲我已經設定的網址:應用程序/類別名稱/ StoryName那裏有很多像技術,服裝等類別的這裏是我的htaccess內容:的Apache的.htaccess規則衝突

Options +FollowSymLinks 
RewriteEngine on 
ErrorDocument 404 /ef12/error/404.html 
RewriteRule user/(.*)/ u.php?name=$1 
RewriteRule user/(.*) u.php?name=$1 
RewriteRule (.*)/(.*)/ scoop.php?cat=$1&title=$2 
RewriteRule (.*)/(.*) scoop.php?cat=$1&title=$2 
RewriteRule (.*)/ scoop.php?cat=$1 
RewriteRule (.*) scoop.php?cat=$1 

我希望用戶的個人資料要出現像:

應用程序/ AbhishekBiswal

和故事出現,如:

應用/技術/史蒂夫 - 工作

我知道這是可能的:例如>的Twitter:twitter.com/Abhishek_Biswal和twitter.com/about其中前者是個人資料,後者是關於Twitter頁面。

是的,我也有目錄,如登錄和註冊(http://app/Login),這也與規則的衝突,也就是,當我嘗試訪問登錄目錄,服務器假定登錄的用戶名(當我設置簡檔URL作爲在htaccess的http://app/UserName)和一個「否外形」錯誤被示出。

謝謝。

回答

2

規則之前添加這些行。他們阻止生效的規則,如果一個文件或目錄存在那場比賽的網址:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d