Отдаем все индейцам. Apache в деле
Support Hoster`а ответил быстрее, чем я добрался до блога, но ведь им за это платят больше ;)
Но ближе к делу: на просьбу установить на nginx настройки аналогичные, высланные им для apache, я получил отказ, и повторное предложение передавать все файлы в apache минуя nginx.
Вы пьете шампанское? Я - нет, уже вообще не пью... Но тем не менее рискнул.
Да и теперь мы сможем в любое время поиграть с настройками в .htaccess.
Но это потом, а сейчас о результатах:
- Отклик сервера, если и изменился, то не понятно точно в какую сторону, но и изменения эти всего на 10-13ms;
- Google больше не говорит о кэшировании, а значит мы в плюсе;
- Мы имеем полный контроль настроек программных заголовков к файлам.
Решено так и оставить, ведь это поощрит возврат пользователя на наш сайт, в то время как ранее мы поощряли лишь возврат в течении 24 часов.
И учитывая пункт 3 решено добавить немного пафоса:
Header set Developer "Kosarev Alexandr" Header set DeveloperSite "kosarev.by" <FilesMatch "\.(mov|mp3|jpg|pdf)$"> ForceType application/octet-stream Header set Content-Disposition attachment </FilesMatch> # 480 weeks <FilesMatch "\.(ico|pdf|otf|flv|jpg|jpeg|png|map|gif|js|css|swf)$"> Header set Cache-Control "max-age=290304000, public" Header append Vary: Accept-Encoding </FilesMatch> # 2 DAYS <FilesMatch "\.(xml|txt)$"> Header set Cache-Control "max-age=172800, public, must-revalidate" Header append Vary: Accept-Encoding </FilesMatch> FileETag MTime Size <ifModule mod_expires.c> <FilesMatch ".(ico|css|js)$"> ExpiresActive on ExpiresDefault "access plus 1 month" </FilesMatch> </ifModule> <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE text/javascript AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE image/png <IfModule mod_setenvif.c> BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/html </IfModule> </IfModule>
Не исключено, что правила для ico|css|js зря перекрывают друг друга, но с этим разберемся чуть позже, а пока у нас:
- 2 строчки пафоса
- 4 блока правил нацеленных на кэширование
- блок включающий gzip сжатие
Что же, на этом сегодня все - слишком сонный сегодня, следующая остановка:
- Разбираемся с AddThis - он портит нам не только код, но и хэш
- Думаем, что делать с {less}
Вопрос насчет Less: при отключенном JS у нас чистый boostrap; да и сейчас у нас 2 файла, когда можно грузить 1, вопрос в скорости загрузки решат тесты.
Автор: Александр Косарев Категория: kosarev.by Опубликовано: 10 февраля 2014