Page 2 of 3
Re: Фильтр поиска
Posted: Mon Mar 16, 2020 8:55 am
by ulan
А возможно ли сделать чтобы смарт в серч лог не писал спец символы? это намного проще, сегодня я экранирую один символ а завтра вылезет другой
Re: Фильтр поиска
Posted: Mon Mar 16, 2020 8:58 am
by admin
думаю я вряд ли смогу составить конкуренцию интернету, уже очень много написали документации на эту всю тему, все бесплатно ...
спец символы - это и есть символы которые в запросе нужны, например "+" это ж символ ?
Re: Фильтр поиска
Posted: Mon Mar 16, 2020 9:06 am
by ulan
Ну так тут проблема даже и не в +
проблема в том что инпут формы экранирует кавычку в запросе valentine's day и шлет на сервер как положено valentine%27s+day
А вот откуда потом система берет охулиард бекслешей уже намного интересней

Re: Фильтр поиска
Posted: Mon Mar 16, 2020 9:35 am
by admin
конечно, давайте разберемся
сделайте запрос который другие юзеры не делали
например
search=valentine's+day+12345678
есть по итогу у этого запроса масса слешей?
Re: Фильтр поиска
Posted: Mon Mar 16, 2020 9:39 am
by ulan
search=valentine's+day+12345678
у этого запроса один слеш в серч логе
хотя не должно быть не одного верно?
после этого каноникал получается <link rel="canonical" href="/search/?q=valentine\'sday12345678"
по которому ходят боты и на втором запросе там уже
?q=valentine\\'sday12345678"
дальше можно не продолжать))) почистил кодом это
но он пишет в серч лог слеш даже от первого раза
Re: Фильтр поиска
Posted: Mon Mar 16, 2020 9:45 am
by admin
"search=valentine's+day+12345678
у этого запроса один слеш в серч логе"
и поиск 1 по нему?
как именно вы выводите каноникал?
Re: Фильтр поиска
Posted: Mon Mar 16, 2020 9:47 am
by ulan
а причем тут каноникал и запись в базу серч лога?
тут я решил кодом <?=str_replace(array("\\", " "), array("","+"),"<!--ESCAPED_SEARCH_QUERY-->");?>
Re: Фильтр поиска
Posted: Mon Mar 16, 2020 9:50 am
by admin
ну так вот ваша проблема
вы выводите каноника юзая таг <!--ESCAPED_SEARCH_QUERY-->
верно ?
Re: Фильтр поиска
Posted: Mon Mar 16, 2020 9:54 am
by ulan
причем тут запись в серч лог даже когда одна кавычка и каноникал который я уже решил?
кстати каноникал решился еще проще <!--URLENCODE_SEARCH_QUERY-->
Re: Фильтр поиска
Posted: Mon Mar 16, 2020 10:00 am
by admin
Решился конечно, потому что вы сами себе устроили проблему а виноватым хотите сделать других
итого ситуация была такая
каноникал выводился с <!--ESCAPED_SEARCH_QUERY-->
те там каноникал получался грубо говоря ?search=valentine\'s+day
бот кликал на этот урл и там уже каноникал получался ?search=valentine\\'s+day
и так шло по кругу добавляя слеши
и все это писалось ессно в лог как новые поисковые запросы
сейчас вы заменили на <!--URLENCODE_SEARCH_QUERY-->, так как и надо было сделать с самого начала
виноват как обычно "кто угодно только не я"