【问题标题】:url rewriting in phpphp中的url重写
【发布时间】: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


    【解决方案1】:

    未经测试,但值得一试:

    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>
    

    【讨论】:

      【解决方案2】:

      &lt;a&gt; 标签内,您将使用漂亮的链接,即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,但我希望你明白了

      编辑&amp;%{QUERY_STRING} 部分对于您的要求不是必需的,但如果我想将任何额外参数传递给页面,我通常会包含它。

      【讨论】:

        猜你喜欢
        • 2017-09-18
        • 2016-02-17
        • 1970-01-01
        • 1970-01-01
        • 2017-09-22
        • 1970-01-01
        • 2012-01-10
        • 2011-03-17
        相关资源
        最近更新 更多