2011-12-05 26 views
1

我想设置我的.htaccess文件来为我做一些漂亮的重定向。快速重写/正则表达式问题

现在我有这样的URL:

mysite.com/?video=1

我想有像URL:

mysite.com/1/

现在我已拼凑在一起的以下正则表达式:

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

这个伟大的工程,如果该URL的格式为

mysite.com/2

,但如果格式是

mysite.com/2/

,注意尾部斜线。

所以我真正需要帮助的是我的正则表达式! :)

回答

1

尽量使量词非贪婪

^(.*?)/?$ 

否则结尾的斜线由.匹配的,因为它的贪婪和明确的斜线是可选的。

0

Stema的想法应该有效。或者你可以通过例如使正则表达式更具体。只接受号码。

RewriteRule ^([0-9]+)/?$ /index.php?v=$1 [L] 

或字母数字

RewriteRule ^([0-9a-zA-Z]+)/?$ /index.php?v=$1 [L]