Как в Modx Revo сделать редирект с my-site.ru/index.php на my-site.ru?

В Modx Revolution существует несколько способов настроить редирект с my-site.ru/index.php на my-site.ru. Рассмотрим два наиболее распространенных подхода.

Первый способ - использование .htaccess. Чтобы настроить редирект с my-site.ru/index.php на my-site.ru, откройте файл .htaccess в корневой директории вашего сайта и добавьте следующий код в конец файла:

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteCond %{THE_REQUEST} ^[A-Z]{3,9} /index.php HTTP/
  RewriteRule ^index.php$ http://my-site.ru/ [L,R=301]
</IfModule>

Затем сохраните изменения в файле .htaccess. Если файл не существует, создайте его в корневой директории вашего сайта. После этого, когда посетитель попытается зайти на my-site.ru/index.php, его автоматически перенаправит на my-site.ru.

Второй способ - использование события OnLoadWebDocument в Modx. Чтобы воспользоваться этим способом, вам необходимо создать плагин с событием OnLoadWebDocument и добавить следующий код:

<?php
if ($_SERVER['REQUEST_URI'] == '/index.php') {
  $modx->sendRedirect($modx->makeUrl('',''),array('responseCode' => 'HTTP/1.1 301 Moved Permanently'));
}
return;
?>

Затем сохраните плагин и активируйте его в административной панели Modx. После этого, когда посетитель попытается зайти на my-site.ru/index.php, его автоматически перенаправит на my-site.ru.

Оба способа имеют свои преимущества и недостатки. Редирект с помощью .htaccess более прямолинейный и быстрый, но требует доступа к серверу и права на изменение файла .htaccess. С использованием события OnLoadWebDocument в Modx нет необходимости изменять файл .htaccess, но требуется активация плагина.

Определите, который из этих способов подходит вам лучше всего, и примените его для настройки редиректа с my-site.ru/index.php на my-site.ru в Modx Revolution.