- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как удалить плохие SEO-ссылки и очистить ссылочную массу сайта
Применяем отклонение ссылок
Сервис Rookee
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Я делаю так:
1. GET-запрос разбирается обычным образом и определяется, какая страница должна быть отображена.
2. Перед вызовом страницы, страница "знает" какой у нее должен быть URI и фактический REQUEST_URI сверяется с тем, что "должно быть".
3. Если не совпадает - то 301 редирект на то что "должно быть".
А rel="canonical" разве не для таких ситуаций?
А во сколько раз это замедлит индексацию? (не rel="canonical" замедлит, а неизбежность лишних обращений ПС к сцайту)
те которые бот увидит - сгенерированные роутером системы, если система сама не плодит бредовые урлы (как джумла "без напильника" в руках нуба) - всё будет более чем нормально. разговоры о "злобных конкурентах" параноидальный бред ;)
А поскольку параноики не лечатся (как и рас3.14здяи программеры), и показать ПС можно самые разные урлы... предложите ТС легкое и быстро работающее решение. Можно на примере этого форума.
Что-то я не совсем понял что ТС нужно. Отследить дублирование параметров в строке или контролировать лишние параметры?
А во сколько раз это замедлит индексацию? (не rel="canonical" замедлит, а неизбежность лишних обращений ПС к сцайту)
+1 к rel="canonical".
Не вижу ни одной причины, почему это должно замедлить. Обращение в любом случае будет, если ссылка существует. Дальше робот узнает где искать оригинал страницы будь это 301 редирект или rel="canonical" - не важно.
А если отдавать 404, то не факт, что много 404 на сайте лучше чем много редиректов.
Если же тупо решать в лоб поставленную задачу, то врядли что-то другое можно придумать кроме
Я делаю так:
2. Перед вызовом страницы, страница "знает" какой у нее должен быть URI и фактический REQUEST_URI сверяется с тем, что "должно быть".
P.S. на данном форуме никак эта проблема не решается.
Все параметры передаются в числовом виде, поэтому для исключения инъекций думаю достаточно будет привести их к соответствующему виду.
$_GET["id"]=intval($_GET["id"]);
а на счет отсечения лишних параметров в запросе - понравился вариант
Я делаю так:
1. GET-запрос разбирается обычным образом и определяется, какая страница должна быть отображена.
2. Перед вызовом страницы, страница "знает" какой у нее должен быть URI и фактический REQUEST_URI сверяется с тем, что "должно быть".
3. Если не совпадает - то 301 редирект на то что "должно быть".
Попробую реализовать.
$_GET["id"]=intval($_GET["id"]);
А что будет при
/ru/forum/812957
/ru/forum/812957
?
Фактически надо проверять строку:
/showthread.php?t=812957
/showthread.php?t=812957&page=2
/showthread.php?t=812957&page=3
Но как это делать быстро при очень большом количестве страниц?
Ну вроде как то же самое перед выводом страницы -
$_GET["id"]=intval($_GET["id"]);
$_GET["t"]=intval($_GET["t"]);
$_GET["page"]=intval($_GET["page"]);
а изменить порядок параметров и отсечь лишнее в запросе -
Остановился на таком варианте.
<?php
$url='http://сайт.ru/';
if (substr_count($_SERVER['REQUEST_URI'], "category") >1){
$url=$url.'?category='.intval($_GET["category"]);
if (substr_count($_SERVER['REQUEST_URI'], "id") >1){
$url=$url.'&id='.intval($_GET["category"]);
...продолжить если есть еще параметры...
}
}
?>
//ну а исходя из этого уже составить
<link rel="canonical" href="<?php print $url?>"/>
получится какой бы ни был запрос, он для поисковика всегда будет правильный.
только вместо:
if (substr_count($_SERVER['REQUEST_URI'], "category") >1){
надо:
if (isset($_GET["category"])){
вместо:
$url=$url.'?category='.intval($_GET["category"]);
надо:
$url.='?category='.intval($_GET["category"]);
Ну да, что то я обходными путями накодил. Верное замечание.