htaccess Перенаправить домен и субдомены на https и включая www - PullRequest
0 голосов
/ 11 сентября 2018

У меня проблемы с перенаправлением URL-адреса с помощью https

  1. www.domain.com to domain.com
  2. www.name.domain.com to name.domain.com

Домен в порядке, а поддомен - нет.

Вот мой код .htaccess:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteRule ^(.*)$ https://example.com/$1 [R=301,NC]
RewriteCond %{HTTP_HOST} ^www.(.+).example.com [NC]
RewriteRule ^(.*)$ http://%1\.example.com/$1 [R=301,NC]

Я проверяю это, но оно не работает:

# redirect www to none-www
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1%{REQUEST_URI} [QSA,R=301,L]

# redirect http to https
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [QSA,R=301,L]

1 Ответ

0 голосов
/ 13 сентября 2018

Вы можете использовать его:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteRule ^(.*)$ https://example.com/$1 [R=301,NC]
RewriteCond %{HTTP_HOST} ^www.(.+).example.com [NC]
RewriteRule ^(.*)$ https://%1.example.com/$1 [R=301,NC]

Я проверил его, и он отлично работает, но это зависит от ваших настроек для субдоменов, если ваши субдомены указывают на главный каталог, вам нужно просто разместить файл htaccessв главном каталоге, но если ваши субдомены указывают на другой каталог, вы должны поместить файл htaccess во все каталоги, вы можете проверить его на панели хоста

...