Ошибка?или почему тег rel canonical указывает не т
Автор: Александр В.Итак. Один из моих сайтов: dreshop.ru
По адресу: https://dreshop.ru/blog/index.php имеется Блог.
Открываем любой пост блога. Например этот: https://dreshop.ru/blog/index.php?osnovy_mody_stilya_stimpank
Обратите внимание на выделенное жирным шрифтом в адресе ссылки выше. К адресу добавляется index.php.
Теперь откроем код стрнаицы и видим: <link rel="canonical" href="https://dreshop.ru/blog/?osnovy_mody_stilya_stimpank"/>
Т.е. канонической указана страница без "index.php". Она, кстати, физически тоже существует, но напрямую с сайта не открывается.
На минуточку, при навигации по блогу, все страницы открываются с припиской "index.php". А в коде страницы, канонические указаны без "index.php". Это в корне неверно. Из-за этого, страницы блога почти не попадают в поиск Яндекса.
Откуда я это обнаружил. Сегодня решил выяснить, почему из всех проиндексированных страниц блога, в поиске всего пара штук. И вот тебе раз: в Яндекс.Вебмастере прямо указано на этот баг (спасибо им!)
Пожалуйста, исправьте этот в срочном порядке. Это мешает продвижению сайтов!
Если есть возможность у тех, кто дружит с командами фала .htaccess, я очень вас прошу, дайте рабочий код для редиректа со страниц с "index.php", на без "index.php".
Автор
Если есть возможность у тех, кто дружит с командами файла .htaccess, я очень вас прошу, дайте рабочий код для редиректа со страниц блога с "index.php", на без "index.php".
У меня сложность с этим, т.к. физически это стрницы третьего уровня (*/blog/*). Сам не могу понять, как сделать 301 редирект на "без index.php". Ну раз rel="canonical" указывает на "без index.php", значит и физически показывать надо такие страницы.
Автор
А создатели программы могут либо:
1. Изменить теги rel="canonical", сделав указание на страницы "с index.php", сделав их каноническими.
или
2. Убрать из страниц блога "index.php"
3. Сделать переход на страницы "без index.php"
выполните простенький поиск в интернете - как убрать index.php и вставьте нужные строчки в файл .htaccess
Автор
Не подходят все эти варианты. Если вы посмотрите сами, то поймёте почему. Добавочное "index.php" идёт не после доменного имени, а после /blog/. Поэтому все распространённые варианты не подходят. Пробовал уже. Увы.
Вопрос остаётся открытым.
Сделайте второй вариант, где добавьте в доменное имя этот блог со слэшами, в чем проблема
Автор
Делал. Не работает. Может я что-то сделал неверно. Короче, не получается. Поэтому и попросил помощи.
Если можете помочь конкретным примером - буду признателен.
Автор
До сих пор жду ответа от создателей.
Чего уж проще. Просто внести исправления в программу, чтобы канонической была признана та страница, которая открывается. Или открывать ту страницу, на которую указывает тег rel canonical.
А то сейчас странная ситуация: на указателе написано "в Простоквашино", а по факту дорога ведёт в "Изумрудный город". Пользователи этого не замечают, а вот поисковым роботам это как красная тряпка.
В общем то это ляп программы, который должен быть поставлен в очередь на устранение при следующем обновлении. Даже без вариантов.
поставьте в .htaccess так
Redirect 301 /blog/index.php https://dreshop.ru/blog/
или
Redirect 301 blog/index.php https://dreshop.ru/blog/
Автор
Решение найдено!
В файл .htaccess ставим следующую строку:
RewriteRule ^blog/index.php(.*)$ https://site.ru/blog/$1 [R=permanent,L]
где site.ru - ваш сайт.
Всё! Работает. В блоге вместо неканонических страниц открываются канонические и без окончания index.php
Теперь боюсь, как бы разрабочик WSX5Pro не поменял что-то в обратную сторону =))
Всем спасибо.
Не переживайте, такого не случится, у них при переходе на главную страницу, всегда index был есть и будет.
Автор
На моих сайтах нет. Я это вылечил давно через .htaccess