- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Маркетинг для шоколадной фабрики. На 34% выше средний чек
Через устранение узких мест
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Откуда у вп html файлы?
Да, бред написал. Прошу прощения. Я имел ввиду html-сущности, генерируемые движком.
У html динамических страниц, также как и остальных динамических страниц с другим чпу форматом не обязательно должно быть настроено кеширование, потому что
А я как раз считаю, что обязательно должно быть настроено кеширование. И никаких потому что =) По крайней мере, если речь идет об информационном сайте. И даже не столько кеширование, сколько правильное содержимое заголовков Last-Modified и If-Modified-Since, т.к. этого требует Яндекс.
Но я об этом писал в первом сообщении темы.
Статью не читал, в двух словах что вы предлагаете для браузерного кеширования динамических страниц?
Предлагаю его настроить.
---------- Добавлено 29.11.2015 в 23:12 ----------
Вся ваша "беда" надумана и высосана из пальца.
Кэшированием "статики"(html, стили, скрипты, картинки) испокон веков занимался веб-сервер, и он отлично с этим справляется.
У "статики" есть дата изменения файла - на её основе веб-сервер сам грамотно отдаёт и Etag и LastModified. Apache умеет это ещё с первых версий 1.3.х
Я имел ввиду не статику, а отсутствие Last-Modified у динамики. Не знаю, почему в моей голове html-сущности превратились в html-файлы.
Действительно, заголовки, связанные с кешированием, неплохо настроены для статики хостерами по-умочанию. Хотя, можно было бы и лучше.
Но давайте возьмем движок WordPress, на котором работает огромное количество сайтов. Html-сущности там не отдают нужных заголовков. Даже если забить на кеширование (не знаю, почему все так хотят на него забить), Яндекс основывается на этих заголовках.
Клиентское кеширование и возможные проблемы, которые могут возникнуть при непонимании принципов его работы, вопрос серьезный. И поэтому я написал статью, создал этот топик. И призываю всех не думать, что Apache все настроит там как-то за вас. Видел я сайты, на которых главная страница (динамическая, с анонсами свежих статей) кешировалась на продолжительный срок, что есть проблема, если не понимать как это все работает.
А я как раз считаю, что обязательно должно быть настроено кеширование. И никаких потому что =) По крайней мере, если речь идет об информационном сайте. И даже не столько кеширование, сколько правильное содержимое заголовков Last-Modified и If-Modified-Since, т.к. этого требует Яндекс.
Покажите где он это требует?
Почему у динамических страниц с .html оно должно быть настроено а у других нет? С таким же успехом тогда можно требовать от всех страниц клиентского кеширования.
Предлагаю его настроить.
То что его нужно настроить я и так знаю. Расскажите как это сделать. Вот у меня сложная система, допустим форум, где пользователи сами генерируют контент. Сообщения на странице добавляются, удаляются, редактируются, перемещаются, контролируются и обновляются из разных функции, и что будет если где-то механизм даст сбой? Отсутствие заголовках лучше чем заголовки с устаревшей датой.
(не знаю, почему все так хотят на него забить).
Для динамических страниц(когда инклудятся шаблоны, куски кода и иформация из БД) есть только один способ узнать устарела ли страница - сгенерить её, посчитать от неё хэш и сравнить его с хэшем, хранящимся в БД.
А если страница уже сгенерена - чего бы просто не отправить её пользователю, каналы сейчас не лимитируют.
Поэтому многие забивают болт на кэширование на стороне клиента, так проще. Плюс, кэширование не даёт сайту никаких преимуществ в глазах Яндекса.
Заголовок Last-Modified и его молочный брат lastmod из sitemap.xml помогают ускорить индексацию сайта.
Для динамических страниц(когда инклудятся шаблоны, куски кода и иформация из БД) есть только один способ узнать устарела ли страница - сгенерить её, посчитать от неё хэш и сравнить его с хэшем, хранящимся в БД.
Можно кешировать матрешкой, и инвалидировать кеш при изменении одной из составляющих. Это не требует повторной генерации страницы.
Генерировать заново проще - но тогда и сравнивать не надо. Раз сгенерировали - пишем новую версию в кеш и не извращаемся. Ну, или если надо поддерживать ласт-модифайд, то уже с кешированной страницей сравнивать, чего хеш вручную считать?
Заголовок Last-Modified и его молочный брат lastmod из sitemap.xml помогают ускорить индексацию сайта.
В Яндексе - нет, его бот перестал поддерживать LastModified (раньше - поддерживал).
Яндекс за сутки на сайте переиндексирует от 1000 до 7000 страниц, для большинства сайтов этого вполне достаточно, куда ещё ускоряться?
В Google - ускоряет только теоретически. Его бот поддерживает LastModified (304 ответ сервера на картинке ниже), но Google и так шустро всё переиндексирует.
Ну, или если надо поддерживать ласт-модифайд, то уже с кешированной страницей сравнивать, чего хеш вручную считать?
Если вы храните страницы в кэше на сервере - то да. Только зачем их хранить в кэше, если всё-равно каждую страницу приходится генерить заново (для определения изменений).
Проще хранить хэш(хотя бы CRC32) от страниц в БД, его и сравнивать проще, чем 2 html-"портянки".
PS: Неплохо предварительно вытягивать html-код в одну строку, убирая пробелы и переносы строк между тэгами - они не влияют на контент страницы.
В Яндексе - нет, его бот перестал поддерживать LastModified.
Откуда эта информация?
Я вижу следующий текст в хелпе Яндекса:
Даже если сервер не выдает дату последней модификации документа (last-modified), ваш сайт будет проиндексирован. Однако в этом случае следует учитывать следующее:
- в результатах поиска не будет показываться дата рядом со страницами вашего сайта;
- при сортировке по дате сайт не будет виден большинству пользователей;
- робот не сможет получить информацию о том, обновилась ли страница сайта с момента последнего индексирования. А так как число страниц, получаемых роботом с сайта за один заход, ограничено, изменившиеся страницы будут переиндексироваться реже.
Для динамических страниц(когда инклудятся шаблоны, куски кода и иформация из БД) есть только один способ узнать устарела ли страница - сгенерить её, посчитать от неё хэш и сравнить его с хэшем, хранящимся в БД.
В подавляющем большинстве случаев вся эта обвеска типа(последние новости/комментарии, виджеты, соц. кнопки) которые "инклудятся шаблоны" - для поисковиков, что мусор.
Показателем обновления служат дата создания/обновления записи/поста - основного контента страницы. Ну, еще можно учитывать дату последнего комментария к записи. Это касается статейных сайтов. Для других сайтов типа сервисов.. вообще смысла нету либо индивидуально настраивать какое то кеширование и отдавать last-modified.
Откуда эта информация?
Из логов сервера для сайта, который поддерживает LastModified. В посте выше приведены картинки недавних логов ботов Яндекса и Google, у Яндекса нигде нет ответа 304 "Not Modified", у Google - есть.
Год назад 304 код светился в ответах Яндекс боту, значит он присылал заголовок If-Modified-Sinse: