- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году Google заблокировал более 170 млн фальшивых отзывов на Картах
Это на 45% больше, чем в 2022 году
Оксана Мамчуева
Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте.
Более 60% пользователей выходят в сеть из браузеров, которые поддерживают ServiceWorker.
http://caniuse.com/#search=servicework
ServiceWorker это проект от Google, часть Progressive Web Apps, которая исполняется перед каждым запросом страницы в браузере.
Но также ServiceWorker продолжает выполняться и когда пользователь ушел из сайта, по типу Web Push, только не требует разрешения пользователя в браузере.
Одна большая поправка, как и весь новый функционал Google Chrome - работает только если ваш сайт на HTTPS.
ServiceWorker отлавливает каждый запрос страницы в браузере, соответственно, можно на лету модифицировать содержимое страницы, кешировать его, получать отдельные участки с разных кластеров и подгружать новый контент даже, когда у пользователя закрыта вкладка с вашим сайтом.
Mozilla создал плагин для WordPress, который позволяет в один клик сделать ваш сайт доступным вне подключения к интернету, а также доставлять новые страницы еще до захода пользователя на сайт. Главное, чтобы пользователь хотя бы раз зашел на ваш сайт, дальше ServiceWorker продолжает работать в фоне
https://en-gb.wordpress.org/plugins/offline-content/
Используя данную технологию, вы можете загружать все нужные JS/CSS/картинки в фоне, еще до того момента, когда они потребуются пользователю
https://en-gb.wordpress.org/plugins/offline-shell/
Но вот одна незадокументированная возможность - вы можете перенаправлять запросы к вашему серверу, если он недоступен.
Например, ваш сайт попал под DDOS атаку/черный список... прокси-сервера/VPN на работе.
Пользователь у которого установлен ServiceWorker (хотя бы один раз посещал ваш сайт), запрашивает главную страницу или какую-либо публикацию из SERP.
Этот запрос отлавливает ServiceWorker.
Дальше он может открыть локальную копию запрашиваемой страницы (если она уже запрашивалась или была доставлена посредством предзагрузки) или...
Мы можем перенаправить этот запрос на сервис Google Cache/Яндекс кеш, вытянуть нужный блок и использовать его так, как будто ответ был получен от вашего сервера.
И если на вашем сайте сидит быстробот, большая вероятность, что содержимое не будет отличаться от реального.
Также, как вы понимаете, это можно использовать не только как защиту от DDOS атак - например, чтобы просто сократить нагрузку на ваш сервер.
Ну это примерно тоже самое, как если бы использовать глобальный супер прокси, если на сайт кто-то заходил, и этот сайт "упал", для другого клиента поднимается его копия из кеша (например при если отклик не произошел за определенное время).
Ну это примерно тоже самое, как если бы использовать глобальный супер прокси, если на сайт кто-то заходил, и этот сайт "упал", для другого клиента поднимается его копия из кеша (например при если отклик не произошел за определенное время).
Да, но в отличии от прокси, это будет работать из коробки у 60% пользователей и в качестве хостера служат супербыстрые сервера Google.
Как вариант, можно использовать Google AMP сервера, а не Google Cache.
Тогда данные будут на 100% последние и актуальные.
Я думаю, реализация очень простая, примерно пару строк в плагине от Mozilla.
Конкретно для меня это неактуально, но возможно кому-то пригодится.
Просто хотел сохранить и поделиться идеей.
Как я понимаю, после этого сайту не страшны блокировки или DDOS?
А как быть с HTTPS? Как происходит повторная валидация сертификатов?
Как я понимаю, если сайт открывается с пометкой "Secure" в Chrome даже в Offline режиме, то повторная валидация не обязательна?
Александр И, не вводите народ в заблуждение. Это штука замена более старым апи кэширование, направленное на работу в режиме офлайн. Я так понимаю, что для динамики и контента, требующего постоянного общения с сервером это никак не пойдет, вам в любом случае для кэша надо загрузить статику/страницу, если вы её не загрузили ранее и сервер лежит, то боюсь вы никак её уже и не загрузите. Эти API по большей части для SPA (для моделей на фронте работающих с localStorage)
Александр И, не вводите народ в заблуждение. Это штука замена более старым апи кэширование, направленное на работу в режиме офлайн. Я так понимаю, что для динамики и контента, требующего постоянного общения с сервером это никак не пойдет, вам в любом случае для кэша надо загрузить статику/страницу, если вы её не загрузили ранее и сервер лежит, то боюсь вы никак её уже и не загрузите. Эти API по большей части для SPA (для моделей на фронте работающих с localStorage)
ServiceWorker работает совместно с Cache API - верно.
Но ServiceWorker исполняется еще до начала запроса к серверу, как только вы ввели адрес в адресную строку, ServiceWorker решает что делать дальше.
Это часть PWA направлена на то, чтобы сделать веб приложения работоспособными в оффлайне и дать им возможность предварительной загрузки, даже когда сайт закрыт.
Если пользователь хотя бы раз посещал сайт, у него уже закеширован shell (js/css).
А идея как раз в том, что динамику, а именно html содержимое страницы можно вытягивать из Google Cache/AMP.
https://developers.google.com/web/fundamentals/getting-started/primers/service-workers
[ATTACH]159209[/ATTACH]
Как я понимаю в respondWith можно вставить и другой код, в том числе и перенаправление запроса и его модификация.
(возможно я ошибаюсь, это просто идея)
Соответственно, ServiceWorker отдает offline.html и выполняет appendChild в body с ответа от Google Cache/AMP/других кластеров.
Это не подойдет для отправки комментариев, поиска по сайту (можно перенаправлять запросы в Google поиск для сайтов), отдачи картинок из содержимого (можно сразу вставлять картинки из CDN/Google Cloud Storage).
Но это подойдет для того, чтобы просто отдавать информацию из Google Cache в шкурке сайта без изменения URL и с сохранением навигации внутри сайта.
Кроме этого, ServiceWorker работает, даже если вкладка с сайтом закрыта (вне процесса вкладки с сайтом).
Соответственно, можно равномерно подгружать ресурсы по типу Push-уведомлений.
Mozilla создали соответствующий плагин для WordPress
https://en-gb.wordpress.org/plugins/offline-shell/
Александр И, все верно, только работает не вкладка, а воркер. У вас нет объектов window и document, вы никого никуда не перенаправите, ничего лишнего не подгрузите. У вас просто есть event, по сути который может сменить состояние чего то. Но это то, что понял я. Я конечно могу в этом плане ошибаться, но политика браузеров всегда заключается в том, что вы не можете сделать ничего без ведома пользователя, в том числе и кросдоменные запросы/релиректы и прочее. Что мешает в вашем случае вместо CDN сформировать url для смены пароля/оплаты чего либо, отправки конфиденциальных данных, да тот же самый ддос организовать в фоне со всех юзеров что были на вашем сайте?
да тот же самый ддос организовать в фоне со всех юзеров что были на вашем сайте?
Так ведь основной источников ботов для DDOS и есть расширения в браузерах, js коды, которые встраивает нужный зловредный код в страницы чужих сайтов.
ServiceWorker это новая технология и тот факт, что без запроса пользователя, устанавливается процесс, который может скачивать и хранить в Cache API до 500 ГБ, наводит на размышления.
У вас явно неверное представление о SW - он использует Cache API/Web Manifest, но его главная задача - висеть в фоне, скачивать и отлавливать запросы.
Вот кстати, Chrome на мобильных уже предлагает установку сайтов с SW на домашний экран
https://www.smashingmagazine.com/wp-content//uploads/2016/08/web-app-install-banner-opt.png
Я уже предоставлял ссылку на WordPress плагин от Mozilla, который позволяет скачивать в фоне дополнительные ресурсы для работы сайта (как я понимаю, при вызове того же события, только не fetch, а update/install)
https://en-gb.wordpress.org/plugins/offline-shell/
В примерах разработки PWA от Google, запросы к HTML странице переписывались на запросы к JSON посредством SW и дальше уже ответ встраивался в offline.html шаблон после его инициализации.
Значит таки можно указать свои адреса, как источник для кеша.
Только вопрос в том, можно ли обращаться к другим доменам.
Google хочет заменить обычные приложения PWA - если обычные приложения могут сами выбирать кластер/сервер, к которому обращаться, почему не дать такую возможность PWA?
А как же CDN?
Но я пока не изучал этот вопрос более детально.
Я возможно проверю это в ближайшее время.
Если кто-то проверит раньше, пожалуйста, поделитесь с нами.
Google часто предзагружает первый результат (прорисовывает, если быть точным) в SERP через <link rel="prerender"...
Что было сделано:
1. На служебной странице был UNREGISTER ServiceWorker для сайта, с которым выполнялся пункт номер 2
chrome://serviceworker-internals/
2. Найден сайт в Google, где для него выводится расширенный сниппет и Google добавляет его в <link rel="prerender">.
А именно "smashingmagazine.com"
3. Обновлена страница
chrome://serviceworker-internals/
4. В ней появился ServiceWorker сайта, который Google добавил в prerender.
При этом я не переходил по ссылке из SERP!
Кто хочет повторить эксперимент, переходите сразу на chrome://serviceworker-internals/, потом вводите на google.com (не в адресную строку, это само себе вызывает prerender) "smashingmagazine.com" и обновляйте chrome://serviceworker-internals/.
В результате, без посещения сайта, у вас появляется процесс, который будет скачивать обновления сайта, которого вы не посещали.
То-есть, без посещения сайта, Google Chrome подтягивает скрипт, который может скачивать и хранить до 500 ГБ в Cache API.
Я пока изучаю вопрос SW более подробно, в том числе, какие функции доступны ему.
Как я понимаю, в контексте Event, ему недоступно множество методов и свойств, которые доступны в Document/Window.
Как я понял, Fetch, в том числе и с другого домена (Google Cache/AMP) ему доступен.
https://fetch.spec.whatwg.org/
Возможно у кого-то появились мысли по этому поведению браузера/Google,
буду рад услышать, можно в личные сообщения.
как загружать страницу даже когда отключен сервер
Ну всё, сбыласть мечта идиотов - теперь можно скачать весь интернет :)
А ничего не разрывает в голове, при сочетании в одном переложении слов (по смыслу) "мобильный" и "загрузка не запрашиваемого"?
Новая вера, новые адепты... :(
То-есть, без посещения сайта, Google Chrome подтягивает скрипт, который может скачивать и хранить до 500 ГБ в Cache API.
Я все забываю спросить, хранить то он где будет? У меня на винте? А хохо не хохо?😂
У меня на винте?
В кеше гуглохрома. В памяти и/или винте в зависимости от настроек девайсов. (мобильных, ога :) )
Да-да, в сжатом виде. Запаковать-распаковать, найти все связи, отренддерить...