Попытка создать правило перезаписи для принудительного использования HTTPS без www

# strip WWW

RewriteCond %{HTTP_HOST} ^www\.(.+)
RewriteCond %{HTTPS}s/%1 ^(on(s)|offs)/(.+)
RewriteRule ^ http%2://%3%{REQUEST_URI} [L,R=301]

# принудительно использовать HTTPS

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

Я перепробовал миллион различных вариантов.

Я могу удалить HTTP-запрос www, но он не перенаправляет на HTTPS.

Я не могу удалить HTTPS-запрос www

Что мне здесь не хватает?

0
Mark 11 Сен 2018 в 23:34

1 ответ

Лучший ответ

Битнами Инженер здесь,

Если вы всегда хотите получить доступ к своему сайту с помощью https: // www., Эта конфигурация должна быть аналогична той, которую вам нужно использовать.

https://docs.bitnami.com/general/components/apache/#how-to-access-my-application-from-only-one-domain1

В вашем случае отредактируйте файл apache2 / conf / bitnami / bitnami.conf и используйте следующую конфигурацию:

<VirtualHost _default_:80>
    RewriteEngine On
    RewriteCond %{HTTP_HOST} !^(localhost|127.0.0.1)
    RewriteRule ^(.*)$ https://www.example.com$1 [R=permanent,L]
...

<VirtualHost _default_:443>
    RewriteEngine On
    RewriteCond %{HTTP_HOST} !^www.example.com$
    RewriteCond %{HTTP_HOST} !^(localhost|127.0.0.1)
    RewriteRule ^(.*)$ https://www.example.com$1 [R=permanent,L]
...
1
Jota Martos 12 Сен 2018 в 12:17