TechBlogSD - Все для WordPress и WEB разработки
WEB и WordPress инструкции, новости, обзоры тем и плагинов

Настраиваем 301 редирект с index.html или .php в корень сайта

6 042

Если Вы обнаружили что главная страница блога вдруг имеет доступ по таким адресам как:

site/ и site/index.html (или site/index.php).

Значит для показаний поисковой оптимизации Вашего сайта данные переходы являются дублями. Да, поисковики могут обрабатывать такие ссылки, но в большенстве сучаев при наличии таких ссылок на Вашем сайта в индекс попадут (к примеру) 2 главные страницы. Я считаю что такие грубые ошибки СЕО, обязательно необходимо исправить!

Решать данную проблему мы будем при помощи 301 редиректа на корень сайта "/". Что бы создать даннй редирект, отройте .htaccess файл (он по законам жанра должен находиться в корне Вашего сайта, и к нему можно получить доступ через ftp).

Вставьте после:

RewriteEngine On

Следующие две строчки:

#Если у Вас переход на index.php: RewriteCond %{THE_REQUEST} ^[A-Z]{3,9} /index.php HTTP/ RewriteRule ^index.php$ http://VASHSITE/ [R=301,L] #Если у Вас переход на index.html: RewriteCond %{THE_REQUEST} ^[A-Z]{3,9} /index.html HTTP/ RewriteRule ^index.html$ http://VASHSITE/ [R=301,L]

Если Вы используете CMS к примеру WordPress, корее всего, что у неё уже есть реализация редиректа из корня сайта на файл index. В данном случае откройте index.php Вашего сайта, который находится в корне Вашей CMS и пропишите:

if($_SERVER['REQUEST_URI'] == "/index.php") { header("Location: /",TRUE,301); exit(); }

Когда редирект будет добавлен, обязательно проверьте все ли работает. Проще всего это сделать на bertal.ru, который покажет Вам, какой ответ выдает Ваш сервер на различные запросы.

Источник записи:

1 Comment
  1. Oleg says

    “Если Вы используете CMS к примеру WordPress, корее всего, что у неё уже

    есть реализация редиректа из корня сайта на файл index. В данном случае

    откройте index.php Вашего сайта, который находится в корне Вашей CMS и

    пропишите:”

    index.php может затереться, лучше писать в wp-config.php в конце:

    if(strpos(” “.$_SERVER[‘REQUEST_URI’],’index.php’) == strlen(” “.$_SERVER[‘REQUEST_URI’])-9)

    {

    header(“Location: “.str_replace(‘/index.php’,”,$_SERVER[‘REQUEST_URI’]),TRUE,301);

    exit;

    }

    код проверяет что index.php идет в конце

    если у вас урлы заканчиваются на слеш /

    то надо писать

    header(“Location: “.str_replace(‘/index.php’,’/’,$_SERVER[‘REQUEST_URI’]),TRUE,301);

Leave A Reply

Этот веб-сайт использует файлы cookie для улучшения вашего опыта. Мы предполагаем, что вы согласны с этим, но вы можете отказаться, если хотите. Принимаю Подробнее