如何使用mod_rewrite编辑此URL

时间:2012-08-22 11:56:24

标签: apache mod-rewrite

我有一个godaddy linux服务器,我想编辑我的网址

以下是我网站上3个网址的示例

  1. www.website.com/b.php?n=30&t=big
  2. www.website.com/b.php?n=20&t=medium
  3. www.website.com/b.php?n=10&t=small
  4. 我希望能够将它们改为

    1. www.website.com/30/big
    2. www.website.com/20/medium
    3. www.website.com/10/small
    4. 我的图片代码

      echo '<img src="gifs/' . $_GET["t"] . '/' . $_GET["n"] . '.gif">';
      

1 个答案:

答案 0 :(得分:0)

您可以通过将网站上的所有链接从/b.php?n=30&t=big样式链接更改为/30/big样式链接来更改它们。然后,您可以将这些规则放在文档根目录中的htaccess文件中:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/?([^/]+)/(.*) /b.php?n=$1&b=$2 [L,QSA]

这会将URI更改回通过b.php的路径。

如果您的旧网址在互联网上浮动并且需要更改为新网址,您可以在相同的htaccess文件中使用这些网址:

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /b\.php\?n=([^&]+)&t=([^&\ ]+)
RewriteRule ^/?b\.php$ /%1/%2 [L,R=301]

这将重定向浏览器(或谷歌索引机器人)以永久指向新网址。