- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Тренды маркетинга в 2024 году: мобильные продажи, углубленная аналитика и ИИ
Экспертная оценка Адмитад
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте!
На сайте есть страницы фильтров с квадратными скобками такого вида:
https://site.com/category/?filter[selected][16][0]=554
В открытом коде квадратные скобки заменены на %5d и %5b , то есть URL имеет такой вид:
https://site.com/category/?filter%5bselected%5d%5b16%5d%5b0%5d=554
Однако в Google Search Console появилось много ошибок в отчете "Ошибка переадресации" - http://i.prntscr.com/AvFJ1a7QRF2udknrPZfhCQ.png
Есть теория, что:
1. Поисковый бот видит в урлах спецсимволы "%5b" / "%5d" и понимает, что это квадратные кавычки, но интерпретирует их как "%5B" и "%5D" (то есть в верхнем регистре) и пытается перейти по ним.
2. Срабатывает редирект верхнего регистра на нижний.
3. Поисковый бот снова интерпретирует спецсимволы в верхний регистр.
4. Снова срабатывает редирект.
Так и происходит зацикливание редиректа, из-за которого возникла ошибка сканирования страниц фильтров.
Подскажите, пожалуйста, возможно у кого-то уже была подобная проблема? Или, возможно, кто-то знает имеет ли значение нижний/верхний регистр в спецсимволах квадратных кавычек?
Заранее спасибо!
Странно, что у вас спецсимволы передаются как данные. Спецсимволы - это элемент оформления (если я правильно понял заявленный пример).
Страницы фильтров должны формироваться через параметры, в параметры - заносить значение выбранных пользовательских данных. Не используйте в URL мусор. Должно быть примерно так,
/list?filter=одно_значение%дополнительное_значение%еще_значение
Словом, кодов элементов оформления в URL быть не должно, иначе оформление сменили - URL не совпадают, в результаты будут многочисленные дубли.
Есть теория, что:
Дурацкая теория.
А вот сама конструкция
filter[selected][16][0]=554
Да разработчик этой конструкции, я вижу, не сильно парился по урлам передавая массивы прям туда.
ТС, какая CMS так делает или самопис?
filter[selected][16][0]=554
Ещё один неправильный бутерброд
А иногда как бы правильное преобразование символов урла приводило к странным последствиям.
Ещё один неправильный бутерброд
имеет ли значение нижний/верхний регистр
Не имеет.
Ну тут скобки (и пр. срань) в значениях параметра. Хрень конечно, но понятная. А вот скобки в названии параметра - это какой-то ппц.
Не вижу ничего такого, обычный массив передаётся.
Не вижу ничего такого, обычный массив передаётся.
Какой массив в имени параметра? Кинь ман про такие конструкции в Query_string.
<?php
$filter=$_GET['filter'];
print_r($filter);
Вывод:
т.е. PHP умеет напрямую в код такой массив считывать.