Думаю, не стоит останавливаться на том моменте, что я человек? Однако Яндекс упорно считает меня ботом.
….
Небольшой эксперимент: Попросил жену, у нее результаты - с 6 попытки прошла. Даю дочке, с 4-той. Тревожно стало. Но точно тогда проблема не во мне.
Загадка пока не разгадана: почему мои подопечные, тоже не смогли пройти тест на "определение ботов" с первого раза?
Как я вижу ситуацию, в пору составлять коллективный иск. Благо, юристов знакомых хватает и нарушении конституционных прав на лицо.
Если на этом форуме есть официальный представитель этой компании, я хочу чтобы вы передали это "ребятам" (или как вы называете своих сотрудников здесь), следующую информацию. Как временный выход из сложившейся ситуации, хочу чтобы Яндекс называл меня и близких мне людей - людьми. Хочу чтобы и даже намека не было на то что я и близкие мне люди, это боты/роботы и т.п. Чтобы убрали со своих сайтов дискриминацию, а именно упоминание и унижение в адрес пользователей, что сервис "определяет ботов и отсеивает их" пока это будет недоказанным фактом.
Сейчас придет Владимир, и загадочно объяснит, что:
1. У нечеловеков дети тоже нечеловеки.
2. Нечеловеки подсознательно ищут в жены и женятся тоже на нечеловеках.
3. Раз яндекс говорит тебе (намекает), что ты нечеловек, то значит так оно и есть.
Не очень точно выразился:
хочу чтобы у реального юзера не запускался процесс ini_set('session.save_path', $path); ЕСЛИ ЭТО НЕ ПЕРВЫЙ ХИТ.
Да, я это понимаю. Но переделывать это очень сложно. Вот и леплю костыли.
Это я тоже понимаю. Вопрос в том - можно ли ДО session_start(); понять что сессия данного посетителя существует? Я бы делал эту проверку, и тогда бы обходил
$path = $_SERVER['DOCUMENT_ROOT'].'/sessions/'.$_SERVER['HTTP_HOST'];if (!is_dir($path)) { $path = $_SERVER['DOCUMENT_ROOT'].'/sessions/bots';}if (isset($_SERVER['HTTP_USER_AGENT'])) { if (!is_bool(stripos($_SERVER['HTTP_USER_AGENT'], 'bot')) || !is_bool(stripos($_SERVER['HTTP_USER_AGENT'], 'spider')) || !is_bool(stripos($_SERVER['HTTP_USER_AGENT'], 'Slurp')) || !is_bool(stripos($_SERVER['HTTP_USER_AGENT'], 'crawler')) || !is_bool(stripos($_SERVER['HTTP_USER_AGENT'], 'Uptime')) || !is_bool(stripos($_SERVER['HTTP_USER_AGENT'], 'facebook'))) { $path = $_SERVER['DOCUMENT_ROOT'].'/sessions/bots'; }}ini_set('session.save_path', $path);
при каждом хите...
Хотелось бы понять ваш опус, но честно непонятно совсем.
session_start() - создаёт сессию, либо возобновляет существующую, основываясь на идентификаторе сессии, переданном через GET- или POST-запрос, либо переданный через cookie (из документации)
до вызова session_start массив $_SESSION пуст. Вы можете стартовать сессию только по условию, условием будет ваше определение реального юзера (только не в массиве $_SESSION)
Массив в памяти. Но файл сессии-то есть. Я тоже понять не могу, согласен :-) , поэтому и прошу объяснить.
Вот мысль пришла, никто не заморачивался? Есть подозрение, что 99% useragent ботов содержит подстроку "http" как часть ссылки на своих хозяев. В то же время 99% useragent браузеров - НЕ содержат, по крайней мере мне удалось найти лишь ОДИН браузер - какой-то никому не известный QtWeb, у которого есть. Ну еще у одной древней Оперы правда.
Вот и я думаю, так можно сократить проверку о ОДНОГО условия (ну плюс еще одно - мое специфичное UptimeRobot)..
Да, знаю,
... но птичка по зернышку клюет.
В целом для вашего сайта отрицательный рост по видимости в яндексе и внешним ссылкам уже год, возможно и дольше. Те ссылки, что есть это форумы и подобное. Как я и писал выше, по моему мнению, нужны жирные беки и еще добавлю, чтобы число ссылок на сайт всегда увеличивалось. И это снизит вероятность фильтра.
Можно иметь самый крутой, вылизанный сайт с кучей ассортимента и лучшим сервисом, но без продвижения он не будет в топах.
В топах пф, ссылки, редики.
И это - неправильно и не может продолжаться вечно.
о чем? кто следит за панелями, тот знает, что веста давно умершая и не обновляющаяся панель, хестия тоже уже люди выдохлись поддерживать ее бесплатно, это две заброшки, в которых не исправлено куча косяков из старого и уже выявленного. к сожалению таков финал у всего, что делается на энтузиазме, а не за деньги с четким бизнес планом.
Продаваны впаривают ISPmanager…
https://github.com/hestiacp/hestiacp/blob/main/CHANGELOG.md
Последнее обновление 2 мес назад.
По Весту не спорю.
Ну вот так я и сделал... Хотел еще блин сделать так, чтобы не каждый хит у меняsession.save_path перезаписывалось, но не срослось влет, забил :-)
Ну потому что у меня session_start() в стопицот местах засунуто. Проще их по хрону чистить. Еще раз - сайту столько лет, сколько половина из вас в сознательном возрасте не жило.
См. выше. У меня время жизни неактивной сессии (опять же, через хрон-самодельный gc) 1мес, соответственно активная - вечна. Нельзя клиенту корзину обнулять.
Залогиненные юзеры у меня могут в БД корзину отправить, это да. Но залогиненых 30%.