使用模式匹配在.htaccess中重写

时间:2012-12-07 00:08:10

标签: .htaccess mod-rewrite

我正在尝试将重写条件放在一起,以匹配以10个字母数字字符结尾的网址的最后一部分,例如:

http://www.someurl.com/EHN4K5LFWQ

并将其路由到:

http://www.someurl.com/index.php/EHN4K5LFWQ

到目前为止,我已将以下内容整合在一起,但在使用和不使用重写规则的许多变体进行了几天的挣扎后,我似乎无法使其工作。

RewriteCond %{REQUEST_URI} ^dir1/dir2/([A-Z,0-9]{10})$ 
RewriteRule ^(.*)$  dir1/dir2/index.php/$1 [L]

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

如果htaccess文件位于文档根目录中,则只需使用此规则:

RewriteRule ^dir1/dir2/([A-Z,0-9]{10})$ /dir1/dir2/index.php/$1 [L]

如果htaccess文件位于 dir2 文件夹中,则可以使用此规则:

RewriteRule ^([A-Z,0-9]{10})$ index.php/$1 [L]