Включить заголовки кэша на Nginx

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

Я пытался добавить:

    location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
        root /home/admin/kids/app/static;
        expires 30d;
        add_header Pragma public;
        add_header Cache-Control "public";
    }

Но когда я это делаю, сервер перестает работать.

server {
    listen 80;
    server_name example.com;
    gzip_static on;
    gzip on;
    gzip_http_version 1.0;
    gzip_proxied any;
    gzip_min_length 500;
    gzip_disable "MSIE [1-6]\.";
    gzip_types text/plain text/html text/xml text/css
               text/comma-separated-values
               text/javascript application/x-javascript
               application/atom+xml;

    location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
        root /home/admin/kids/app/static;
        expires 30d;
        add_header Pragma public;
        add_header Cache-Control "public";
    }

    # Handle all locations
    location / {
            try_files $uri @proxy_to_app;
    }
    location @proxy_to_app {
            # Pass the request to Gunicorn
            proxy_pass http://127.0.0.1:8000;

            # Set some HTTP headers so that our app knows where the
            # request really came from
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

Здесь была та же самая проблема, но я не понимаю комментарий, который помогает.

Возможно, в другом блоке есть определение для статических файлов с корневым набором, в этом случае вы должны добавить директивы в этот блок. (Я знаю, что это 2 года поздно, но для будущих граждан) - Aularon

Благодарю.

0 ответов

Другие вопросы по тегам