【发布时间】:2015-01-09 22:47:47
【问题描述】:
正如标题所说,我正在将一个网站从olddomain.com 迁移到newdomain.com。我目前在olddomain.com 的Web 根目录中有一个htaccess 301 重定向,如下所示,它将对olddomain.com/any/url 的任何请求重定向到newdomain.com 上相同的相应网址:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !newdomain.com$ [NC]
RewriteRule ^(.*)$ http://newdomain.com/$1 [L,R=301]
我的问题是,如何修改此重写规则以排除一个特定目录? olddomain.com/downloads 将继续充当文件镜像,因此我需要从原始站点范围的 301 重定向中排除 olddomain.com/downloads(及其所有子目录,例如 /releases 等),以便对 @ 上的 URL 的任何请求987654330@ 被重定向到 newdomain.com 上的相应 URL,但对位于 olddomain.com/download 内的文件或目录的任何请求除外。
编辑如下面的 cmets 所述,我还需要从重定向中排除 olddomain.com/getlatest.php,因为它会生成依赖于解析服务器目录结构的下载链接。
【问题讨论】:
标签: apache .htaccess mod-rewrite redirect