Htaccess перенаправить http на https и www на не-www не работает - PullRequest
0 голосов
/ 14 мая 2018

Веб-сайт, над которым я работаю, должен быть перенаправлен с http на https, мы установили сертификат и с www.не-www.Так как я не звезда в .htaccess, я посмотрел правильный код в интернете и нашел это:

RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^ http://website.nl [L,NE,R=301]

RewriteCond %{HTTPS} off
RewriteRule ^ https://website.nl [L,NE,R=301]

также попытался

RewriteCond %{HTTP_HOST} ^www\. [NC,OR]
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://website.nl%{REQUEST_URI} [R=301,L,NE]

Это должно работать, www,если не работает https, второе утверждение выдает ошибку при создании ошибки, но не дает желаемого результата.Я проверил его через онлайн-тестер, который говорит, что так должно быть.Я искал другие версии этого, я использовал просмотр порта, добавил проверку ssl, кажется, ничего не работает.Что я делаю не так?

1 Ответ

0 голосов
/ 14 мая 2018

Для пересылки трафика с HTTP на HTTPS используйте:

RewriteEngine On 
RewriteCond %{SERVER_PORT} 80
RewriteCond %{HTTP_HOST} ^(www\.)?website\.com
RewriteRule ^(.*)$ https://www.website.com/$1 [R,L]

Мы проверяем, обращается ли запрос к порту 80, а затем проверяет домен для переадресации.Если домен имеет значение x, то мы пересылаем его на https://x/.Проверка домена также имеет условную группировку под префиксом домена, включающую www., если она существует, это делается с помощью выражения регулярного выражения ?.Поэтому оба запроса домена приведут к одному и тому же протоколу.

https://www.regular -expressions.info / conditional.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...