Назад | Перейти на главную страницу

Можно ли использовать .htaccess, чтобы указать браузерам кэшировать аналитику Google?

Когда я бегу Google PageSpeed ​​Insights Я получаю следующее предложение по оптимизации.

Когда я нажимаю Используйте кеширование браузера ссылка отправляет меня на страницу, которая рекомендует использовать Кэш-контроль или ETags.

Настройка Cache-Control с участием .htaccess должно быть достаточно простым, поэтому я включил следующие строки в существующий .htaccess файл.

<IfModule mod_headers.c>

<filesMatch "https://www.google-analytics.com/analytics.js">
Header set Cache-Control "max-age=7200, public"
</filesMatch> 

<filesMatch "https://www.googletagmanager.com/gtag/js?id=UA-00000000-0">
Header set Cache-Control "max-age=900, public"
</filesMatch> 

</IfModule>

Я загрузил .htaccess файл, протестировал его и получил ту же ошибку. Хотя Google рекомендует использовать Cache-Control это не решает проблемы.

Когда это не сработало, я попробовал ExpiresByType но это тоже не решило их проблемы.

<IfModule mod_expires.c>

ExpiresActive On

<IfModule mod_expires.c>
ExpiresByType application/javascript "access plus 2 hours"
</IfModule>

</IfModule>

Есть ли способ использовать .htaccess file, чтобы указать браузерам кэшировать эти файлы, или это невозможно?

Ничего в .htaccess может повлиять на домен вне вашего контроля.

У вас есть пара вариантов.

  • Самостоятельно разместите файл gtag.js, который возможно, но не рекомендуется.
  • Прокси-сервер файла gtag.js, добавив в него свои заголовки. Это решает основную проблему (обновления) из приведенного выше документа.
  • Игнорируй это. По сути, это ложноположительный результат; Google предположительно намеренно не зря установить низкое время кеширования для этих ресурсов.