2012-06-21 31 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'它会起作用吗? –