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

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

Когда я нажимаю ссылку кэширования браузера Leverage, он отправляет меня на страницу, которая рекомендует использовать Cache-Control или 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 файл для указания браузерам кэшировать эти файлы или это невозможно?

1 ответ

Решение

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

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

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