1

我现在正处于危机之中,我覆盖了我的 .htaccess 文件,该文件有很多我在 6 个月前所做的 URL 重写。现在我必须全部重做,因为没有它,我的网站的一半都无法正常工作。

我有一个我需要改变的东西的清单,也许他们都使用相同的方法,也许其中一些没有,这里有一个快速列表......

Old: http://i.website.com/(Anything)
New: http://www.website.com/images/(Anything)

然后在我需要做这个之后:

Old: http://www.website.com/images/(Anything)
New: http://www.website.com/images.php?id=(Anything)

Errr,这是让我开始的两个主要内容......我真的需要这些尽快,我现在有超过 100k 图像离线,因为这些链接已损坏:(

谢谢

编辑:

我在我的框架的 htaccess 底部也有这个:

RewriteRule .* index.php/$0 [PT]

我需要第二个重写规则(images.php 之一)来跳过这个规则而不使用它......

4

1 回答 1

0

尝试这样的事情:

RewriteCond %{HTTP_HOST} ^i.website.com$
RewriteRule ^(.+)$ http://www.website.com/images/$1 [R]

RewriteRule %{HTTP_HOST} ^www.website.com$
RewriteRule ^images/(.+)$ /images.php?id=$1 [L]

第一个条目检查请求的主机i.website.com并重定向[R]到新的 URL。接下来检查请求的主机是否是www.website.com,然后匹配images/路径中的任何内容并根据您的请求重写 URL,[L]告诉它不做进一步的处理。

遵循您提到的包罗万象的规则,将其他查询重定向到您的框架。

于 2012-09-10T17:48:47.450 回答