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

кеширование nginx работает?

Я не могу сказать, правильно ли кеширует nginx. Я запускаю приложение стека MEAN с nginx впереди в качестве (надеюсь) кэширующего обратного прокси.

  1. Если я использую сетевую вкладку chrome dev tools, у нее есть заголовок ответа: X-Powered-By Express.

  2. Если я сделаю curl -I mysite.com, будет указано, что 302 временно перемещено, а Server: nginx / version. Я не понимаю, обслуживает ли запрос экспресс или nginx.

Я взглянул на консоль своего сервера, и она дает 304 на каждый запрос.

Вот моя конфигурация в sites-available / default. По умолчанию используется nginx.config.

proxy_cache_path  /data/nginx/cache  levels=1:2    keys_zone=STATIC:10m
    inactive=24h  max_size=1g;

server {
        listen 80 default_server;

        # Make site accessible from http://localhost/
        server_name localhost;

        location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to displaying a 404.
                try_files $uri $uri/ =404;
                # Uncomment to enable naxsi on this location
                # include /etc/nginx/naxsi.rules
                proxy_pass              http://127.0.0.1:3000;
                proxy_set_header        Host $host;
                proxy_cache             STATIC;
                proxy_cache_valid       200 1d;
                add_header      cache_status    $upstream_cache_status;
            }
}

Заголовок cache_status не отображается с ударами, промахами или чем-то еще.

Смотреть в

/data/nginx/cache

чтобы увидеть, есть ли там файлы.

У меня есть руководство по Nginx, которое включает кеширование Вот. Я не думаю, что у вас есть все необходимые настройки, если только некоторые не имеют значений по умолчанию, например

fastcgi_cache_key "$scheme$request_method$host$request_uri";

Внутри вашего местоположения вам может понадобиться это, если заголовки не настроены соответствующим образом приложением, которое вы кешируете.

fastcgi_ignore_headers Cache-Control Expires Set-Cookie;

Прочтите руководство, оно дает больше советов. В предыдущих частях учебника показано, как собрать Nginx из исходного кода, что позволяет выполнять такие операции, как компиляция в mod_headers, что удобно для добавления заголовков для отладки.