Я пробовал миллионы вариантов переписывания .htaccess и не могу заставить это работать.
У меня есть предыдущий HTTPS old-domain.com , который мне нужно переслать на new-domain.io .Оба HTTPS, но только новый домен имеет сертификаты SSL на сервере.Это заставляет браузер пытаться загрузить old-domain.com просто вращаясь в браузере.
У меня уже есть пересылка DNS, которая отлично работает ТОЛЬКО с http, а не с https.Я думаю, что мне нужно использовать что-то вроде % {HTTP: X-Forwarded-Proto} , но не совсем уверен, как.Пока ничего не помогло.
https://old -domain.com AND https://www.old -domain.com
оба должны перенаправить наhttps://new -domain.io (вместе с любым URI, таким как / something / this.html)
Что-то вроде этого должно работать, но перенаправляет бесконечно.
RewriteEngine On
RewriteCond %{HTTP_HOST} ^old-domain\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.old-domain\.com$
RewriteRule (.*)$ https://new-domain.io/$1 [R=301,L]
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule (.*)$ https://new-domain.io/$1 [R=301,L]
РЕШЕНИЕ -------- Новый файл .htaccess домена не может самостоятельно исправить перенаправленную ссылку HTTPS.Есть два способа исправить это.
Удалить пересылку DNS на старом домене DNS.Затем убедитесь, что все еще есть действительные сертификаты SSL И поместите перенаправление в его файл .htaccess для обработки перенаправлений примерно так:
RewriteEngine On
RewriteCond% {HTTP_HOST} (w *)domain.com $ [NC] RewriteRule ^ http://newdomain.com%{REQUEST_URI} [L, R = 301]
Оставьте пересылку DNS старого домена и добавьте новый многодоменный SSLсертификат на новом домене, который включает ОБА домены.Это сложно, потому что вам придется вручную аутентифицировать старый домен, потому что сертификат не будет жить на хосте старого домена.
Я выбрал и успешно реализовал # 1.