2012-06-21 139 views
2

我在尋找合適的.htaccess規則做出Facebook.com/user URL像的.htaccess短期和友好的URL

我想如果我訪問例如

www.domain.com/StackOverFlow 

這將是重寫

www.domain.com/index.php?category=StackOverFlow 

或者

www.domain.com/category.php?item=StackOverFlow 

有什麼幫助嗎?我在這裏試過了一些問題,但他們沒有明確地做這種行爲。

在此先感謝

編輯:

忘了說,我只是想利用這個規則,任何領域後,沒有任何擴展

例如被重定向它應該重定向www.domain.com/categoryDescription但沒有www.domain.com/categoryDescription.phpwww.domain.com/categoryDescription.html

+0

這裏有一個關於這個有趣的教程做同樣的:http://www.noupe.com/php/10-mod_rewrite-rules-you-should-know .html – peacemaker

+0

謝謝你的鏈接。 –

回答

3

下面的例子取URI .com/後並分配該至$1。 您可以爲「項目」

RewriteEngine On 
RewriteRule ^([^/]*)$ /index.php?category=$1 [L] 
+0

例如,它應該重定向'www.domain.com/categoryDe​​scription',但不是'www.domain.com/categoryDe​​scription.php'或'www.domain.com/categoryDe​​scription.html'會起作用嗎? –

+0

感謝您的幫助 –

3

嘗試:

RewriteRule ^StackOverFlow$ index.php?category=StackOverFlow [NC,L] 

或:

RewriteRule ^StackOverFlow$ category.php?item=StackOverFlow [NC,L] 

在一般:

RewriteRule ^([^/]*)$ index.php?category=$1 [NC,L] 

或:

RewriteRule ^([^/]*)$ category.php?item=$1 [NC,L] 
+0

'StackOverFlow'值是一個例子,它可以是任何類別 –

3
<IfModule mod_rewrite.c> 
    RewriteEngine on 
    # Rewrite URLs of the form 'x' to the form 'index.php?category=x'. 
    RewriteRule ^(.*)$ index.php?category=$1 [L,QSA] 
</IfModule> 
+0

例如,它應該重定向'www.domain.com/categoryDe​​scription',但沒有'www.domain.com/categoryDe​​scription.php'或'www.domain.com/categoryDe​​scription.html'它會起作用嗎? –