我们有一个现有的站点,我们称之为ourdomain.com。我们将内容从一个正在关闭的站点转移过来,我们称之为 legacydomain.com。我们将服务器上的旧域指向 /public_html/ 文件夹。
我需要的是一个 .htaccess,它将 legacydomain.com 或 legacydomain/anything-here 重定向到 ourdomain.com/legacydomain/ 没有附加到 URL 的任何其他内容。
但是,我还需要一些特定的 URL 来重定向到某些目的地,而且它们并不真正遵循模式。例如:
legacydomain.com/something.html 到 ourdomain.com/legacydomain/something.html
legacydomain.com/another.html 到 ourdomain.com/legacydomain/folder/another.html
这是我尝试过的:
RewriteCond %{HTTP_HOST} ^www\.legacydomain\.com$ [NC]
RewriteRule (.*) http://www.ourdomain.com/legacydomain/$1 [R=301,L]
Redirect 301 /something.html http://www.ourdomain.com/legacydomain/another.html
它主要工作,但如果我访问 legacydomain.com/anything-here 它甚至不会尝试重写,它只是保持域相同并给出 404。而且我有一种感觉,即使它确实有效,有些东西像 legacydomain.com/anything-here/more-stuff 将被重写为我不想要的 ourdomain.com/legacydomain/anything-here/more-stuff 。
.htaccess 中唯一的另一件事是将非 www 重写为 www,以及标准的 WordPress 内容。任何指导将不胜感激。上面的所有内容都应该在示例前面有一个 http:// 和 www,但它不会让我发布那么多“链接”。