Как обслуживать ресурсы c с эффективной политикой кэширования на Nginx? - PullRequest
0 голосов
/ 06 апреля 2020

На мобильном телефоне ?

Я пытаюсь улучшить загрузку страниц моего сайта

enter image description here

Я добавил

# Media: images, icons, video, audio, HTC
location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|mp3|ogg|ogv|webm|htc|woff2|woff)$ {
    expires 1M;
    access_log off;
    add_header Cache-Control "public";
}

# CSS and Javascript
location ~* \.(?:css|js)$ {
    expires 1y;
    access_log off;
    add_header Cache-Control "public";
}

По некоторым причинам я чувствую, что изменения, которые я только что добавил в мой Nginx, не дают никакого эффекта.

https://developers.google.com/speed/pagespeed/insights/?url=https%3A%2F%2Fwww.bunlongheng.com%2F

Как мне отладить это дальше?

1 Ответ

2 голосов
/ 06 апреля 2020

Вам не хватает директивы max-age от http://nginx.org/en/docs/http/ngx_http_headers_module.html

Не думаю, что вы действительно хотите, чтобы срок действия файлов CSS и JS истек настолько , но я могу ошибаться.

Кроме того, нет входа на изображения и все эти типы файлов? Что делать, если вы получаете горячую ссылку или обслуживаете файлы CSS / JS, которые не могут быть найдены.

Я бы немного переосмыслил управление вашим кэшем.

# Media: images, icons, video, audio, HTC
location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|mp3|ogg|ogv|webm|htc|woff2|woff)$ {
    expires 1M;
    access_log off;
    # max-age must be in seconds
    add_header Cache-Control "max-age=2629746, public";
}

# CSS and Javascript
location ~* \.(?:css|js)$ {
    expires 1y;
    access_log off;
    add_header Cache-Control "max-age=31556952, public";
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...