Правильная переадресация на https:// для Drupal файл .htaccess

Актуально для хостинга BeGet. В сети очень много советов как сделать корректную переадресацию всех возможных урлов на протокол https:// для сайта на Drupal. Для начала, несомненно у Вас должен стоять сертификат, - платный или бесплатный и сайт доступен через https

Итак, друзья, у нас есть сайт на Drupal и есть необходимость сделать пересылку типа:
  • www.site.ru > https://site.ru
  • http://site.ru > https://site.ru
  • а также http://site.ru/page > https://site.ru/page
Работаем мы в файле .htaccess, что находится в корне сайта. Чтобы сделать переадресацию с www на без www, нужно раскомментировать дефолтные строки:
 # To redirect all users to access the site WITHOUT the 'www.' prefix,
 # (http://www.example.com/... will be redirected to http://example.com/...)
 # uncomment the following:
   RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
   RewriteRule ^ http%{ENV:protossl}://%1%{REQUEST_URI} [L,R=301]
Комментарии с последних двух строк сняты. Теперь переходим к перенаправлению на https. Стразу после строчки RewriteEngine on нужно добавить следующее:
# Переадресация на HTTPS
  RewriteCond %{HTTPS} off
  RewriteCond %{HTTP:X-Forwarded-Proto} !https
  RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Теперь все должно работать корректно. По крайней мере, у меня на хостинге Beget все работает "на ура".

Добавить комментарий

Restricted HTML

  • Допустимые HTML-теги: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • Строки и абзацы переносятся автоматически.
  • Адреса веб-страниц и email-адреса преобразовываются в ссылки автоматически.