htaccess中的短链接

时间:2016-09-14 08:06:59

标签: php .htaccess

我有一个网站,我想要实现这样的方案:

如果用户输入网站/ user1,我想将用户重定向到网站/ profile.php?user = user1

但我想将网站/ Feed重定向到网站/ action.php

我将.htaccess文件更改为:

RewriteRule ^([a-zA-Z0-9_\-]+)(/?)$ profile.php?user=$1 [L,QSA]
RewriteRule ^feed(/?)+$ action.php [L,QSA]

当我输入网站/ user1时,它可以正常工作,但不适用于网站/ Feed,它会搜索网站/ profile.php?user = feed

1 个答案:

答案 0 :(得分:1)

您必须更改规则的顺序:

RewriteRule ^feed(/?)+$ action.php [L,QSA]    
RewriteRule ^([a-zA-Z0-9_\-]+)(/?)$ profile.php?user=$1 [L,QSA]

这意味着如果您的网址与第一个RewriteRule匹配,则会应用该网址。否则它将转到下一个RewriteRule

来自documentation

  

定义这些规则的顺序很重要 - 这是它们在运行时应用的顺序。