Использование кэша браузера (Google page speed)

Тема в разделе "Вопросы новичков", создана пользователем Romanychch, 25 ноя 2015.

  1. Romanychch

    Romanychch Постоялец

    Регистр.:
    15 дек 2013
    Сообщения:
    81
    Симпатии:
    14
    Прогнал несколько сайтов по Google page speed.
    Google page speed в одном из пунктов написал:
    "Исправьте обязательно:
    Используйте кеш браузера
    Если указывать в заголовках HTTP дату или срок действия статических ресурсов, браузер будет загружать уже полученные ранее ресурсы с локального диска, а не из Интернета."
    Немного погуглив, я узнал что это надо делать через .htaccess. Я вставил коды те которые нашёл, ещё раз запустил Google page speed но проблема осталась, он по прежнему пишет совет "Исправьте обязательно: Используйте кеш браузера".

    Скажите пожалуйста какой именно код мне нужно вставить в файл .htaccess если мои сайты работают на Joomla 2.5 и Joomla 3.4
     
  2. javx

    javx

    Регистр.:
    28 авг 2015
    Сообщения:
    521
    Симпатии:
    239
    попробуй найти кэширующий плагин для этих движков. Например для wp есть несколько, но как с джумлой дела обстоят я не в курсе.
     
  3. zxcvb333

    zxcvb333 Создатель

    Регистр.:
    13 ноя 2013
    Сообщения:
    35
    Симпатии:
    5
    вы кривой код значит вставили
    HTML:
    # разрешение кеширования файлов на стороне клиента
    <FilesMatch .*\.(css|js|php|phtml|shtml|html|xml)$>
        Header append Cache-Control private
    </FilesMatch>
    
    # включение заголовка Expires для всех файлов сроком на месяц
    # Expires headers (for better cache control)
    <IfModule mod_expires.c>
    ExpiresActive on
    # Perhaps better to whitelist expires rules? Perhaps.
    ExpiresDefault                          "access plus 1 month"
    # cache.appcache needs re-requests in FF 3.6 (thanks Remy ~Introducing HTML5)
    ExpiresByType text/cache-manifest       "access plus 0 seconds"
    # Your document html
    ExpiresByType text/html                 "access plus 0 seconds"
    # Data
    ExpiresByType text/xml                  "access plus 0 seconds"
    ExpiresByType application/xml           "access plus 0 seconds"
    ExpiresByType application/json          "access plus 0 seconds"
    # Feed
    ExpiresByType application/rss+xml       "access plus 1 hour"
    ExpiresByType application/atom+xml      "access plus 1 hour"
    # Favicon (cannot be renamed)
    ExpiresByType image/x-icon              "access plus 1 week"
    # Media: images, video, audio
    ExpiresByType image/gif                 "access plus 1 month"
    ExpiresByType image/png                 "access plus 1 month"
    ExpiresByType image/jpeg                "access plus 1 month"
    ExpiresByType video/ogg                 "access plus 1 month"
    ExpiresByType audio/ogg                 "access plus 1 month"
    ExpiresByType video/mp4                 "access plus 1 month"
    ExpiresByType video/webm                "access plus 1 month"
    # HTC files  (css3pie)
    ExpiresByType text/x-component          "access plus 1 month"
    # Webfonts
    ExpiresByType application/x-font-ttf    "access plus 1 month"
    ExpiresByType font/opentype             "access plus 1 month"
    ExpiresByType application/x-font-woff   "access plus 1 month"
    ExpiresByType image/svg+xml             "access plus 1 month"
    ExpiresByType application/vnd.ms-fontobject "access plus 1 month"
    # CSS and JavaScript
    ExpiresByType text/css                  "access plus 1 year"
    ExpiresByType application/javascript    "access plus 1 year"
    </IfModule>
    
    # выключение Expires для HTML-файлов и PHP-скриптов
    <FilesMatch .*\.(shtml|html|phtml|php)$>
        ExpiresActive Off
    </FilesMatch>
    
    # Выдача заголовка ETag
    FileETag MTime Size
    # Remove browser bugs (only needed for really old browsers)
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4\.0[678] no-gzip
    BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
    Header append Vary User-Agent
    </IfModule>
    
    
    Header set Cache-Control "max-age=2592000, public"
    
    RewriteEngine On
    RewriteBase /
    
    <ifModule mod_gzip.c>
    mod_gzip_on Yes
    mod_gzip_dechunk Yes
    mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
    mod_gzip_item_include handler ^cgi-script$
    mod_gzip_item_include mime ^text/.*
    mod_gzip_item_include mime ^application/x-javascript.*
    mod_gzip_item_exclude mime ^image/.*
    mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
    </ifModule>
    
    <IfModule mod_headers.c>
    Header set Connection keep-alive
    </IfModule>
     
  4. testaross

    testaross Постоялец

    Регистр.:
    22 авг 2013
    Сообщения:
    74
    Симпатии:
    6
    Установите расширение jotcache, в плане работы с кешем в джумле лучше ничего нет.
     
  5. funkybbbbb

    funkybbbbb Создатель

    Регистр.:
    24 авг 2015
    Сообщения:
    18
    Симпатии:
    1
    Проверьте свой сервер. Если у вас не apache, а nginx, то .htaccess работать не будет и надо менять настройки nginx. Я с этим вообще запарился в свое время.
     
  6. UJy

    UJy

    Регистр.:
    23 авг 2011
    Сообщения:
    320
    Симпатии:
    116
    А в чем проблема настройки? Nginx немного отличается, но настроить можно даже погибче апача. А експайрсДейт можно и хидерами отправить из php файла...
     
  7. funkybbbbb

    funkybbbbb Создатель

    Регистр.:
    24 авг 2015
    Сообщения:
    18
    Симпатии:
    1
    Проблема возникает, если ты не знаешь, что .htaccess не работает в nginx, и пытаешься его таким образом настроить :)
     
  8. UJy

    UJy

    Регистр.:
    23 авг 2011
    Сообщения:
    320
    Симпатии:
    116
    Апач не работает, но работает Nginx. Настраивается он не намного сложнее апачевского htaccess. Единственное неудобство - нужно сервер перезагружать после каждой правки...
     
  9. Germeso

    Germeso Создатель

    Регистр.:
    6 янв 2016
    Сообщения:
    12
    Симпатии:
    1
    Почему это он не работает? У меня на сервере и Апач работает и nginx одновременно.
     
  10. divzz

    divzz Писатель

    Регистр.:
    28 мар 2013
    Сообщения:
    5
    Симпатии:
    0
    если на сервере и апач ингинкс работает, будет ли этот код работать?