Как разрешить конфликт плагина редиректа в wordpress и файла htaccess?
У меня сайт на wordpress с установленным плагином переадресации redirection всё последних версий.
Установлен сертификат SSL и сайт открывается без проблем открывается по пути https://site.ru. Проблемы начинаются при попытке перехода с www (https://www.site.ru): он не открывается и показывает ошибку циклической переадресации.
Если в .htaccess прописываю следующее в самом верху файла
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.site.ru [NC]
RewriteRule ^(.*)$ https://site.ru/$1 [L,R=301]
То, по любом переходе на сайт с www и без я получаю ошибку циклической переадресации. Но, стоит отключить при этом плагин redirect, то сразу отрабатывает все переходы и с www и без.
Подскажите как быть, т.к. плагин редиректа нужен - там настроено много переадресаций со старых проиндексированных страниц
Ответы (1 шт):
Проблема циклической переадресации может возникать из-за конфликта между настройками в .htaccess и плагином Redirection. Давайте попробуем решить эту проблему, сохранив функциональность плагина.
Проверка настроек плагина Redirection:
Убедитесь, что в плагине Redirection нет правил, которые могут конфликтовать с вашими настройками в .htaccess. Проверьте, есть ли правила, которые перенаправляют с https://site.ru на https://www.site.ru или наоборот.Изменение .htaccess:
Попробуйте изменить ваш .htaccess файл, чтобы избежать конфликта с плагином Redirection. Например, вы можете использовать следующий код:RewriteEngine On RewriteCond %{HTTP_HOST} ^www\.site\.ru [NC] RewriteRule ^(.*)$ https://site.ru/$1 [L,R=301] # Остальные правила WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>
Проверка конфигурации сервера:
Убедитесь, что ваш сервер настроен правильно для обработки SSL и что нет других конфигураций, которые могут вызывать циклическую переадресацию.Проверка кэша:
Очистите кэш браузера и кэш на сервере, чтобы убедиться, что изменения в .htaccess вступили в силу.Проверка логов:
Проверьте логи сервера (например, error.log или access.log), чтобы увидеть, какие запросы вызывают циклическую переадресацию. Это может дать подсказку о том, где именно происходит конфликт.Тестирование:
После внесения изменений протестируйте сайт с различными URL (с www и без), чтобы убедиться, что переадресация работает корректно.
Если после выполнения этих шагов проблема не решена, возможно, стоит обратиться к поддержке плагина Redirection или к хостинг-провайдеру для получения дополнительной помощи.