[Инструкция]: Учимся правильно кешировать сайт через nginx

12
Andreyka
На сайте с 19.02.2005
Offline
822
3450

Для того, чтоб закешировать любой сайт и отдавать анонимным посетителям сохраненную версию страниц из кеша, сначала нужно определить, что нельзя кешировать и по какому признаку это отличать. Давайте классифицируем, что мы исключаем из кеширования и затем рассмотрим как это сделать проще всего.

Нельзя кешировать:

  • POST запросы - отправка логинов и паролей, добавление комментариев и так далее.
  • Страницы зарегистрированных пользователей
  • Адрес "админки"

Запрет на кеширование можно осуществить по следующим признакам...

Не стоит плодить сущности без необходимости
NT
На сайте с 06.08.2011
Offline
109
#1

на счет заголовков бы ещё информация не помешала, а именно Last-Modified , пересмотрел интернет, инфы нормальной не нашел..

на nginx.

Andreyka
На сайте с 19.02.2005
Offline
822
#2

А для каких целей?

NT
На сайте с 06.08.2011
Offline
109
#3
Andreyka:
А для каких целей?

для SEO, к примеру сегодняшнюю дату Last-Modified: Mon, 18 Mar 2013 11:55:02 GMT

vandamme
На сайте с 30.11.2008
Offline
675
#4
npocToNIK:
для SEO, к примеру сегодняшнюю дату Last-Modified: Mon, 18 Mar 2013 11:55:02 GMT

для expires та же самая ламбада, правила mod_rewite из htaccess не срабатывают

pupseg
На сайте с 14.05.2010
Offline
364
#5

щас работаю вяло текуще над похапе-скриптом, который пробегал бы по сайту и палил бы тип cms и рисовал бы правила для кеширования и с понтом .htaccess для fpm. не так уж на самом деле и нужно все кешить, если сервер - не впс ну или проект не многотысячной аудитории. varnish спасет человечество:)

но мурзилка полезная для начинающих " мне админ не нужен, я сам учусь!" :), ну и себе чего нового почерпнул

Качественная помощь в обслуживании серверов. (/ru/forum/661100) Бесплатных консультаций не даю, не помогаю, не обучаю. Минималка от 100$. Как пропатчить KDE-просьба не спрашивать. Есть форумы (http://linux.org.ru) и полезные сайты (http://www.opennet.ru/).
Andreyka
На сайте с 19.02.2005
Offline
822
#6
npocToNIK:


для SEO, к примеру сегодняшнюю дату Last-Modified: Mon, 18 Mar 2013 11:55:02 GMT

Ну так я понимаю это для страниц надо а не для картинок? Формируйте скриптом тогда.

Слава Шевцов
На сайте с 23.07.2005
Offline
370
#7
Andreyka:
нужно определить, что нельзя кешировать и по какому признаку это отличать.

Nginx нужно кешировать только статику: картинки, видео, текстовые файлы, css, js и прочее. Кеширование динамики - не забота nginx, если только ему внезапно не отдали разумный заголовок с инструкциями по кешированию.

Неизменность точки зрения неизменно порождает иллюзию понимания.
Andreyka
На сайте с 19.02.2005
Offline
822
#8

И точно. Зачем де отдавать статику напрямую с диска?

Ведь можно нагрузить бакенд, потом диск чанками и иметь копию статики в кеше. Вот спасибо, как же я не догадался.

AboutSEO
На сайте с 18.01.2007
Offline
154
#9
Слава Шевцов:
Nginx нужно кешировать только статику: картинки, видео, текстовые файлы, css, js и прочее. Кеширование динамики - не забота nginx, если только ему внезапно не отдали разумный заголовок с инструкциями по кешированию.

а как быть с инклюдом? у меня в статику пхп с лентой новостей инклюдится и таже сапа.

M
На сайте с 01.12.2009
Offline
235
#10

на дохленьких vps кеширование такое, убьет производительность, нужно учитывать много нюансов и людям их доносить. Если это инструкция.

Администратор Linux,Freebsd. построения крупных проектов.
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий