Есть сайт который крайне активно использует Аякс. По факту ПС видит только Шапку и Подвал, все остальное генерится Аяксом.
Если перед отдачей страницы сделать проверку — работает ли у посетителя в браузере JS(я так понимаю если на сайт зайдет ПС то скрипт покажет что JS у него недоступен).
И для обычных посетителей отдавать Аякс версию, а для браузеров с отключенным JS(и ПС в том числе соответственно) отдавать чисто HTML версию той же страницы(ну может быть просто более легкую, без графики и с менее красивой версткой, но с тем же содержимым). Каков шанс нарваться на бан от ПС за клоаккинг или что-то в этом духе?
Платон ничего внятного по этому поводу не ответил:(
Если js не работает, то как вы отдадите обычную (HTML) версию? Загрузите шапку с подвалом, а в шапке укажите редирект на n секунд в элементе meta, который будет сносить js, если будет доступен? Аль что-то иное?
Могу ошибаться, но в php есть get_browser, которая как я понимаю по $_SERVER['HTTP_USER_AGENT'] определяет включена ява или нет. Кроме того, можно изначально сделать редирект с помощью JS на AJAX версию, если не отредиректит знаит JSа нет:))
get_browser() не использовал, но читал про сию функцию. Проблемная она больно, ибо требует доп. файл, который еще и обновлять периодически нужно (да и в User-Agent вроде же не передается данных о состоянии js). Ну а второй вариант загрузит с начала html страничку, а после еще и ajax. Спрашивается, а нафига ajax тогда? :) Получается что-то лучшее, чем промежуточная страничка, не существует. :(
Как я думал get_browser каким-то образом дергает заголовки из запроса. Ну значит тогда через JS редирект будем работать, на самом деле это несколько не моя головная боль, поэтому тут интересует само отношение ПС к такой системе)
Вы неправильно делаете сайт, если такие вопросы у вас вообще возникают. Любой Ajax (да и вообще любой javascript) — это упрощение для пользователей для уже работающего сайта. Все ваши кастомные контроллы должны формироваться из рабочих инпутов, формы с валидацией на ajax должны точно так-же валидироваться без него, дополнительный контент должен подгружаться при нажатии на ссылку, и так ведущую на этот контент.