Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Появление обращений ?page=-111


Recommended Posts

Доброго времени суток! Вчера вечером обнаружил что яндекс долбится в страницы типа  /?page=-1682 Перейдя по ссылке я увидел что страница доступна, и перенаправления на 404 страницу нет. А снизу в списке категорий пишется вот это:"Показано с -27329 по -27315 из 83 (всего 6 страниц)". Получается категория доступна по такому обращению и яндекс может легко позагонять кучу дублей. Кто-то сталкивался с таким? как исправить?

post-30398-0-47968400-1472291156_thumb.jpg

Надіслати
Поділитися на інших сайтах


Вам надо настроить canonical или уникализировать страницы категориии, что бы они не считались дублями.

А можно по тупому:

 

В robots.txt закрыйть

Disallow: /*?page=
Disallow: /*&page=

 

Тема уже обсосана дальше некуда, гуглите форум

Змінено користувачем Waha
  • +1 1
Надіслати
Поділитися на інших сайтах

как исправить?

 

1. проверить откуда такая ссылка

2. Посылать на..уй с таким ссылками, я бы вообще в таком случае отдавал бы не 404, а 403 forbidden

для реально отсутствующих  page=10 при всего 9 - можно и отдать 404, причина - удаление товаров,

3. Принять разумное решение о запрете индексации &page=

  • +1 1
Надіслати
Поділитися на інших сайтах

canonical настроен. не дает покоя сам факт доступности страницы по другому адресу, плюс яндекс обращается постоянно, перебирая номера. Уже до -1470 дошел

блокировать page через роботс не самый лучший вариант, гугл против. 

Надіслати
Поділитися на інших сайтах


Если в сайтмап таких страниц нет и в метатегах там, где 6 страниц, на шестой нет в rel="next" ссылки на седьмую и так до бесконечности (такое вполне мог напихать какой-то кривой SEO модуль), то можно предположить, что у Яндекса какой-то новый алгоритм, который делает предположение, что может существовать страница на единицу больше текущей и, когда он проверяет это предположение и получает статус 200, он идёт так до бесконечности. Если дело в последнем варианте, то вскоре это должны заметить многие.

  • +1 1
Надіслати
Поділитися на інших сайтах


в том то и дело что идет не рост страниц +1, а наоборот уходит в минус. /?page=-1682

Да, минус там не заметен :)

Это более странно и, скорее всего, всё же вызвано внутренней проблемой.

 

В любом случае, проверьте сайтмап и метатеги на всех страницах в пределах одной категории (лучше всего, именно той, которая попала в Яндекс).

 

Ну и, если у всех таких страниц в индексе есть минус перед числом в ссылке, то можно просто поставить шаблонный редирект на 404.

  • +1 1
Надіслати
Поділитися на інших сайтах


Может кто-то проверить на последней версии сборки ocstore вставить на странице категорий минус

пример: было ?page=3 стало: ?page=-3 Открывается ли у вас первая страница категории или 404? сегодня в яндекс вебмастере увидел и офигел, фото в приложении

post-30398-0-88439300-1472395833_thumb.jpg

Надіслати
Поділитися на інших сайтах


Да, минус там не заметен :)

Это более странно и, скорее всего, всё же вызвано внутренней проблемой.

 

В любом случае, проверьте сайтмап и метатеги на всех страницах в пределах одной категории (лучше всего, именно той, которая попала в Яндекс).

 

Ну и, если у всех таких страниц в индексе есть минус перед числом в ссылке, то можно просто поставить шаблонный редирект на 404.

Не поделитесь шаблоном на такой редирект?)

Надіслати
Поділитися на інших сайтах


https://webmaster.yandex.ru/tools/robotstxt/

Здесь проверил доступность страницы с минусом для робота. Так как обход яндексом был выявлен на ранней стадии, то в роботс.тхт был добавлен "Disallow: /*?page=-

Disallow: /*&page=-"
они все равно были загружены, но если смотреть по вебмастеру, то роботу не доступны. 
 

 

404 не будет

 

но ошибка в выводе results - есть

подскажите где искать ошибку?

Надіслати
Поділитися на інших сайтах


        if (isset($this->request->get['page'])) {
            $page = $this->request->get['page'];
        } else {
            $page = 1;
        }

"Ошибка" здесь

Надіслати
Поділитися на інших сайтах

Решение на поверхности  и я о нем говорил

 

проверка валидности page

 

как на <1, так и на > product_totals

  • +1 1
Надіслати
Поділитися на інших сайтах

        if (isset($this->request->get['page'])) {
            $page = $this->request->get['page'];
        } else {
            $page = 1;
        }

"Ошибка" здесь

 

 

кусок кода нашел

 

Решение на поверхности  и я о нем говорил

 

проверка валидности page

 

как на <1, так и на > product_totals

с программированием не дружу, может у вас есть наработки когда проверки на валидность page?

Надіслати
Поділитися на інших сайтах


может у вас есть наработки когда проверки на валидность page?

 

Есть..

 

При неверной странице  - отдает 404

Надіслати
Поділитися на інших сайтах

 

Также, генерируется дубль при дописывании любого символа, после вопросительного знака:

http://*****.ru/ra____le-shine.html?page=1555

Должно отдавать 404 ошибку.

 

Вот люди дают ТЗ и готовы оплатить.

 

Поделиться?

 

Я поделился - рассказал как это сделать - проверить валидность.

Надіслати
Поділитися на інших сайтах

Нашел временное решение для проблемы с отрицательным номером страницы категории:

Данный кусок позволяет отдавать 404 ошибку всем запросам с отрицательными страницами.

if(preg_match('/[-]/', $page))
{
    $this->response->addHeader($this->request->server['SERVER_PROTOCOL'] . ' 404 Not Found');
}
Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.