#.htaccess
#.htaccess
Вопрос:
Я использовал инструмент ‘Redirect mapper‘ с помощью Varvy.com , и это высветило проблему с моим www
перенаправлением. Я бы хотел, чтобы было только одно перенаправление, но инструмент показывает два перенаправления. Смотрите скриншот ниже.
Это то, что я использую в своем htaccess
файле
RewriteEngine On
RewriteBase /
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www. [NC]
RewriteCond %{HTTP_HOST} ^(?:www.)?(. )$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]
Как показано на скриншоте, http://www.d3creative.uk 302 перенаправления на https://www.d3creative.uk /, затем 301 перенаправляет на https://d3creative.uk /
Я бы хотел http://www.d3creative.uk / на 301 перенаправление на https://d3creative.uk /, пропуская перенаправление www.
Буду признателен за любую помощь!
Обновить
Я использую ServerPilot для управления своим сервером, и я настроил SSL с помощью ServerPilot.
Я удалил исходные RewriteCond
и RewriteRule
строки из своего htaccess
файла
Это устраняет множественные перенаправления (см. скриншот ниже), но мне все еще нужен способ перенаправить www
на non-www
Я связался со службой поддержки ServerPilot, я опубликую здесь любые ответы.
Комментарии:
1. Перенаправление 302 не вызвано теми правилами, которые вы опубликовали. В вашей конфигурации должно быть что-то еще. Вероятно, не в файле динамической конфигурации («.htaccess»), а в конфигурации хоста реального http-сервера, который в любом случае является предпочтительным местом для таких правил.
Ответ №1:
Исправлено!
В панели управления ServerPilot есть опция принудительного перенаправления HTTPS. Это противоречило любым перенаправлениям, которые я использовал в своем htaccess
файле.
Отключите «Перенаправление на HTTPS» и используйте приведенный ниже набор правил в своем htaccess
Служба поддержки ServerPilot любезно предоставила этот набор правил, который отлично работает.
RewriteCond %{HTTP_HOST} ^(www.)(.*) [NC]
RewriteRule (.*) https://%2%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
Все версии моего домена теперь перенаправляются (один раз) на мою предпочтительную версию домена.