Настройка редиректа для главной страницы

Несколько способов настроить грамотную переадресацию
Сначала докажите, что это копия

Не перенаправляйте страницу только из-за названия index или home

Сравните содержимое с главной и проверьте код ответа. Самостоятельную страницу с другим назначением нужно сохранить.

  • подтвердите одинаковое содержимое;
  • сделайте резервную копию;
  • правило должно видеть внешний запрос, а не внутреннюю работу CMS.
Сравнение страниц, резервная копия и точное правило только для подтверждённого дубля
Одинаковую копию перенаправляем, самостоятельную страницу оставляем без изменений.

Готовое сообщение разработчику или хостингу

Добрый день!
На example.com обнаружена копия главной по адресу /index.php.
Настройте постоянный редирект 301 или 308 на https://example.com/.
Он должен срабатывать только на внешний запрос /index.php
и не мешать внутренней работе CMS.
Сохраните копию конфигурации и после изменения проверьте сайт.

Безопасный порядок

  1. Проверьте код и визуально сравните страницу с главной.
  2. Сохраните конфигурацию и файлы.
  3. Добавьте одно точное правило перед внутренними правилами CMS.
  4. Проверьте главную, внутренние страницы, формы и админку.

Техническая памятка

Apache

RewriteEngine On
RewriteCond %{THE_REQUEST} \s/+index\.php(?:[?\s]) [NC]
RewriteRule ^index\.php$ https://example.com/ [R=301,L]

Разместите до отправки запросов во front controller.

Nginx

location = /index.php {
    if ($request_uri ~ "^/index\.php(?:\?|$)") {
        return 301 https://example.com/;
    }
    # Сохраните рабочую PHP-конфигурацию.
}

Не заменяйте этим фрагментом весь существующий PHP-блок.

После исправления

  • проверьте дубль и конечную главную;
  • проверьте внутренние страницы и формы;
  • убедитесь, что нет цикла;
  • проверьте результат вручную;
  • при сбое сразу восстановите резервную копию.