Htaccess перенаправить http или https с domain.com на https domain.net - PullRequest
0 голосов
/ 30 января 2019

У меня есть два домена для одного веб-сайта: один .com с ssl, а другой .net без ssl
. Мы хотели бы использовать только расширение .com и перенаправить наших пользователей из старого домена в новый, используяhtaccess файл (я пытался использовать этот код):

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.[^.]+\.[^.]+$
RewriteRule ^(.*) http://www\.%{HTTP_HOST}/$1       [QSA,L,R=301]

Rewritecond %{REMOTE_HOST}  \.exemple\.(net) [nc]
Rewriterule ^(.*)$ https://www.exemple.com [r=301,nc]

RewriteRule ^([^\.]+)$ $1.php [NC,L]

ErrorDocument 404 https://www.exemple.com/404

Это, очевидно, не работает!

exemple.net  ------>   https://www.exemple.com/404 

Любая помощь будет принята с благодарностью.

1 Ответ

0 голосов
/ 30 января 2019

Вот модифицированная версия, которая исправляет несколько проблем с вашим предложением.

Основное изменение заключается в том, что вам нужно повторно использовать capure $1 во втором правиле перезаписи:

RewriteEngine on

RewriteCond %{HTTP_HOST} !^www\.example\.com$
RewriteRule ^/?(.*)$ https://www.example.com/$1 [QSA,R=301]

Rewritecond %{HTTP_HOST}  \.example\.net$
Rewriterule ^/?(.*)$ https://www.example.com/$1 [QSA,R=301]

RewriteCond %{REQUEST_URI} !-f
RewriteCond %{REQUEST_URI}.php -f
RewriteRule ^/?([^\.]+)$ $1.php [NC,L]

ErrorDocument 404 https://www.example.com/404

Обратите внимание, что я не проверял это сам, я применил только несколькоисправляет, глядя на это.

Этот набор правил также будет работать в конфигурации хоста http-сервера или в файле динамической конфигурации (".htaccess").Вы определенно должны предпочесть первый вариант, кроме случаев, когда у вас нет доступа к конфигурации (читай: дешевый хостинг-провайдер).

Очевидно, что модуль перезаписи необходимо загрузить и включить, и если вы решите использовать файл динамической конфигурации, позаботьтесь о том, чтобы он находился в папке host'd DOCUMENT_ROOT и был доступен для чтения процессом http-сервера.,

...