【问题标题】:URL rewriting using .htaccess使用 .htaccess 重写 URL
【发布时间】:2011-04-03 13:38:46
【问题描述】:

我有这样的链接/product.php?id=1

我想在 .htaccess 中重写它,例如 /productname/id 或 /productname/1。

我正在使用 PHP。

【问题讨论】:

    标签: .htaccess url-rewriting seo


    【解决方案1】:

    为此,您需要将产品名称与 id 一起获取,以便在重写表达式中使用它。

    您可能还想探索RewriteMap,您可以在其中将产品 ID 列表映射到产品名称。显然,只有当您的产品数量有限时,您才会这样做。

    如果产品的数量是动态的,变化太频繁,建议你在检索id的时候检索产品名称。

    【讨论】:

      【解决方案2】:

      我会为你提供两种方法。

      第一个将是最简单的。您可能想在 Apache 中使用 mod_rewrite。然后在 serverfault.com 上发布这个问题。

      提示:配置(在您的 .htaccess 文件中)可能类似于:

      RewriteEngine On
      RewriteRule ^/product.php?id=([0-9]+)$ /productname/$1
      

      第二种方法是让您的product.php 脚本告诉调用浏览器加载一个新的URL。为此,请考虑以下内容:

      <?php
        $id = $_GET['id'];
      
        if ( $id > 0 ) {
          /* Redirect browser */
          header("Location: http://www.mydomain.com/productname/$id");
          /* Make sure that code below does not get executed when we redirect. */
          exit;
        }
      ?>
      

      【讨论】:

        猜你喜欢
        • 2014-12-23
        • 2015-01-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多