0

我有许多 URI,如下所示;

  1. http://www.domain.com/index.php?route=information/information&information_id=2(关于)
  2. http://www.domain.com/index.php?route=information/information&information_id=4(帮助)
  3. http://www.domain.com/index.php?route=information/information&information_id=7(联系方式)
  4. ……

有没有办法可以避免编写明确但类似的重写规则?

例子

 RewriteRule    ^contact$    index.php?route=information/information&information_id=2    [NC,L]    # About

 RewriteRule    ^help$    index.php?route=information/information&information_id=4    [NC,L]    # Help
4

2 回答 2

0

很多可能性。最简单的可能是这样的:

^(.*)$ index.php?route=information/information&information_id=$1

然后处理你的information_id 字符串index.php。确保它只允许可接受的值和 404 其他一切。

或者在mod_rewrite级别上更具限制性:

^(contact|help|foo)$ index.php?route=information/information&information_id=$1
于 2013-01-07T20:20:56.970 回答
0

如果您要重写的页面不只少数,关键是在索引页面中拥有一个结合逻辑的单一、简单的重写规则,以根据请求的 URL 提供正确的内容。

查看任何支持 url 重写的流行 CMS 的 .htaccess 和 index.php ,你会找到你想要的。

于 2013-01-07T20:22:24.083 回答