Redirect /old-domain.com https://new-domain.com
не имеет никакого смысла, он пытается переписать папку"old-domain.com", что не то, что вам нужно. Я действительно предлагаю вам взглянуть на документацию инструментов, которые вы используете. Это отличное качество и отличные примеры ...
Вместо этого взгляните на этот подход с помощью модуля переписывания:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^old-domain\.com$
RewriteRule ^/?(.*)$ https://new-domain.com/$1 [R=301]
Хорошая идея - начать с302 временное перенаправление и измените его на постоянное перенаправление 301 позже, как только вы убедитесь, что все правильно настроено. Это предотвращает проблемы с кэшированием при испытаниях ...
Эта реализация также будет работать в конфигурации хоста http-серверов или в файле динамической конфигурации (файл ".htaccess"). Очевидно, что модуль перезаписи должен быть загружен внутри http-сервера и включен на хосте http. Если вы используете динамический файл конфигурации, вам нужно позаботиться о том, чтобы его интерпретация вообще была включена в конфигурации хоста и чтобы он находился в папке DOCUMENT_ROOT
хоста.
И общее замечание: вы всегда должны размещать такие правила в конфигурации хоста http-серверов, а не использовать файлы динамической конфигурации (".htaccess"). Эти динамические конфигурационные файлы добавляют сложность, часто являются причиной неожиданного поведения, их трудно отладить, и они действительно замедляют работу http-сервера. Они предоставляются только в качестве последнего варианта для ситуаций, когда у вас нет доступа к реальной конфигурации хоста http-серверов (читай: действительно дешевые поставщики услуг) или для приложений, настаивающих на написании своих собственных правил (что является очевидным кошмаром безопасности).