Nginx-Caching fortsetzen, ohne Nginx nach dem Bereinigen neu zu starten

1929
David Farrell

Ich verwende fastcgi cache mit nginx 1.4.4 für fedora und es funktioniert gut, bis ich das Cache-Verzeichnis mit folgendem lösche:

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

Danach nimmt nginx das Cachen von Anforderungen erst wieder auf, wenn nginx neu gestartet wird.

Laut Igor ist ein Neustart nicht erforderlich. Wie kann ich also erreichen, dass Nginx das Caching fortsetzt, ohne es neu zu starten?

Hier ist meine virtuelle Hostdatei:

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 Antwort auf die Frage

1
David Farrell

Ändern Sie dies in meiner nginx.conf:

sendfile off; 

Ein Neustart des Systems hat das Problem gelöst.