【发布时间】:2010-05-24 17:56:12
【问题描述】:
喂
我对 apache mod_rewrite 还有一个疑问。 我想重写网址 mydomain/index.php?category=1&id=1 至 我的域/索引/类别/1/id/1 我如何在 .htaccess 中编写规则
我必须在 a 标签内提供的链接是什么
请给我一个解决方案..
【问题讨论】:
标签: php mod-rewrite url-rewriting
喂
我对 apache mod_rewrite 还有一个疑问。 我想重写网址 mydomain/index.php?category=1&id=1 至 我的域/索引/类别/1/id/1 我如何在 .htaccess 中编写规则
我必须在 a 标签内提供的链接是什么
请给我一个解决方案..
【问题讨论】:
标签: php mod-rewrite url-rewriting
未经测试,但值得一试:
RewriteEngine On
RewriteRule ^index/category/([0-9]+)/id/([0-9]+)$ index.php?category=$1&id=$2
您的网址可能与您提到的完全一样:
Category 1
<a href="index/category/1/id/1">Product 1</a>
<a href="index/category/1/id/2">Product 2</a>
Category 2
<a href="index/category/2/id/3">Product 3</a>
<a href="index/category/2/id/4">Product 4</a>
【讨论】:
在<a> 标签内,您将使用漂亮的链接,即category/1/id/1(这正是您使用mod_rewrite 的原因,以便能够使用漂亮的网址!)
至于规则,尝试类似(未经测试):
RewriteRule category/(.*)/id/(.*)$ index.php?category=$1&id=$2&%{QUERY_STRING} [L]
其实我更愿意用
RewriteRule (.*)/(.*)$ index.php?category=$1&id=$2&%{QUERY_STRING} [L]
所以你可以直接打电话给mydomain/1/1,但我希望你明白了
编辑:&%{QUERY_STRING} 部分对于您的要求不是必需的,但如果我想将任何额外参数传递给页面,我通常会包含它。
【讨论】: