1

Я использую кеш fastcgi с nginx 1.4.4 на fedora, и он прекрасно работает, пока я не очищу каталог кеша с помощью:

find /var/nginx/cache -type f -exec rm -f {} \;

После этого nginx не возобновит кэширование каких-либо запросов, пока nginx не будет перезапущен.

По словам Игоря, перезагрузка не нужна. Так как же мне заставить nginx возобновить кеширование, не перезапуская его?

Вот мой файл виртуального хоста:

fastcgi_cache_path  /var/nginx/cache levels=1:2 
                    keys_zone=PAGE_CACHE:60m 
                    inactive=60m; 
fastcgi_cache_key "$scheme$request_method$host$request_uri"; 
fastcgi_buffers 256 4k; 
add_header X-Cache $upstream_cache_status; 

server { 
    listen 80 default; 
    server_name localhost; 
    root /var/www/website/root; 
    location = /favicon.ico { 
            return 204; 
          } 
    location ~* \.(php|cgi|asp|aspx|jsp)$ { 
        return 404; 
    } 
    try_files $uri @fcgi; 
    location @fcgi { 
        fastcgi_cache PAGE_CACHE; 
        fastcgi_cache_valid 200 5m; 
        limit_conn tenmins 3; 
        limit_req zone=gulag burst=50 nodelay; 
        fastcgi_pass unix:/tmp/fastcgi.socket; 
        include /etc/nginx/fastcgi.conf; 
        fastcgi_param SCRIPT_NAME /; 
    } 
} 

1 ответ1

1

Изменяя это в моем nginx.conf:

sendfile off;

И перезапуск системы решил проблему.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .