问题描述
我想将我的整个网站重定向到一个新的唯一地址/域,而不考虑文件名之间的关系。
我不希望 olddomain.com/foo.html
被重定向到 newdomain.com/foo.html
。
olddomain.com/foo.html => newdomain.com
olddomain.com/foo/bar.html => newdomain.com
olddomain.com/a/b/c/moo.html => newdomain.com
htaccess 的 Redirect 301
函数正是我不想要的。
我该如何继续?
这是我目前尝试过的:
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)$ https://www.newdomain.com/$1 [R=301,L]
还有:
Redirect 301 / https://www.newdomain.com/
还有:
RewriteCond %{HTTP_HOST} ^olddomain\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.olddomain\.comfr$
RewriteRule ^/?$ "https\:\/\/www\.newdomain\.com/" [R=301,L]
解决方法
通过查看我的问题找到答案:
我只需要删除最后的 $1,因为它是一个正则表达式,它包含引用脚本名称的值。
所以对我来说可行的解决方案是:
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)$ https://www.newdomain.com/ [R=301,L]