我无法在所有条件下使这些重定向工作。我希望我可以用.htaccess修复它,但可能会有一些问题,因为我之前尝试通过主机的控制面板强制重定向。
无论如何,olddomain.com/whatever,使用http://或https://并且有或没有www都应永久重定向到https://www.newdomain.com/whatever。
有一次我除了https://olddomain.com正确地重定向外,其他所有东西。现在我已经破坏了它,我只是得到了太多的重定向错误。
我相信这两个域都附有一个Let's Encrypt证书。如果这有所不同,则不需要保护旧域。
答案 0 :(得分:2)
根据https://serverfault.com/a/728957,您可以使用此代码段来帮助将用户重定向到该网站的https://www
。
RewriteEngine On
# ensure www.
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# ensure https
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
希望有所帮助!