.htaccess有更有效的方法吗?

时间:2011-04-26 15:19:52

标签: .htaccess

我有这种格式的网址

site.com/brochure/12/subcat/subcat/maincat

我的应用程序中字符串唯一重要的部分是直接在宣传册之后的数字 有时候会有很多subcat个错误的目录,所以我不得不使用这些规则来使它工作

RewriteRule ^brochure/([^/]+)/([^/]+)/([^/]+)/?$ brochure.php?cat_path=$1 RewriteRule ^brochure/([^/]+)/([^/]+)/([^/]+)/([^/]+)/?$ brochure.php?cat_path=$1 RewriteRule ^brochure/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/?$ brochure.php?cat_path=$1

等等 - 有时最多有五种不同的规则允许不同的目录结构。

我猜这可以在一条规则中完成,任何人都可以分享他们的想法吗?

由于

1 个答案:

答案 0 :(得分:3)

由于您在初始([^/]+)之后不关心字符串的任何部分,为什么不使用以下内容:

RewriteRule ^brochure/([^/]+).*$ brochure.php?cat_path=$1

这会匹配并对您的12进行分组,然后安静地匹配并丢弃字符串的其余部分(.*$)。