Heim Backend-Entwicklung PHP-Tutorial Nginx-Cache-Konfiguration

Nginx-Cache-Konfiguration

Jul 30, 2016 pm 01:31 PM
cache http nbsp nginx proxy

Nginx-Cache-Konfiguration

Nginx unterstützt Squid-ähnliche Caching-Funktionen ab Version 0.7.48. Dieser Cache behandelt die URL und zugehörige Kombinationen als Schlüssel, verwendet MD5-Codierung und Hashing und speichert sie auf der Festplatte, sodass er jeden URL-Link unterstützen kann und auch Nicht-200-Statuscodes wie 404/301/302 unterstützt. Obwohl der aktuelle offizielle Nginx-Web-Cache-Dienst nur die Ablaufzeit für die angegebene URL oder den Statuscode festlegen kann und die Squid-ähnliche PURGE-Anweisung zum manuellen Löschen der angegebenen Cache-Seite nicht unterstützt, erfolgt dies über ein Nginx-Modul eines Drittanbieters. Der Cache der angegebenen URL kann geleert werden. IT-Netzwerk, http://www.it.net.cn

Der Web-Cache-Dienst von Nginx besteht hauptsächlich aus dem Befehlssatz „proxy_cache“ und dem Befehlssatz „fastcgi_cache“. Proxy Beim Zwischenspeichern des Back-End-Inhaltsquellenservers wird dieser hauptsächlich zum Zwischenspeichern dynamischer FastCGI-Programme verwendet. Die Funktionalität ist bei beiden grundsätzlich gleich.

Proxy_cache und fastcgi_cache sind in der neuesten Version von Nginx 0.8.32 relativ vollständig. Zusammen mit dem ngx_cache_purge-Modul eines Drittanbieters (das zum Löschen des Caches der angegebenen URL verwendet wird) kann es Squid vollständig ersetzen. Wir verwenden die Caching-Funktion „proxy_cache“ von Nginx seit mehr als zwei Monaten in der Produktionsumgebung. Sie ist sehr stabil und die Geschwindigkeit ist Squid nicht unterlegen.

Funktionell verfügt Nginx bereits über die Web-Cache-Beschleunigungsfunktion und die Funktion zum Löschen des angegebenen URL-Cache, die Squid hat. In Bezug auf die Leistung ist die Nutzung von Multi-Core-CPUs durch Nginx viel besser als die von Squid. Darüber hinaus ist Nginx in Bezug auf Reverse-Proxy, Lastausgleich, Gesundheitsprüfung, Back-End-Server-Failover, Umschreiben und Benutzerfreundlichkeit viel leistungsfähiger als Squid. Dadurch kann ein Nginx gleichzeitig als „Lastausgleichsserver“ und „Web-Cache-Server“ verwendet werden.

1. Kompilieren und installieren Sie den Nginx-Lastausgleichs- und Caching-Server unter Linux:
Linux learning, http://linux.it.net.c

ulimit -SHn 65535
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.00.tar.gz
tar zxvf pcre-8.00.tar . gz


cd pcre-8.00/
./configure
make && make install
cd ../

wget http://labs.frickle.com/files/ngx_cache_purge-1.0.tar.gz
tar zxvf ngx_cache_purge-1.0.tar.gz

wget http://nginx.org/ download/nginx-0.8.32.tar.gz
tar zxvf nginx-0.8.32.tar.gz
cd nginx-0.8.32/
./configure --user=www --group= www --add-module=../ngx_cache_purge-1.0 --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
cd ../ IT-Netzwerk, http://www.it.net.cn

2. /usr/local/nginx/conf/nginx.conf Der Inhalt der Konfigurationsdatei lautet wie folgt:
IT-Netzwerk, http://www.it.net.cn

Benutzer www www;

worker_processes 8;

error_log /usr/ local/nginx/logs/nginx_error.log crit IT-Netzwerk, http://www.it.net.cn

pid /usr/local/nginx/ logs/nginx.pid ;

#Gibt den Wert für maximale Dateideskriptoren an, die von diesem Prozess geöffnet werden können.
worker_rlimit_nofile 65535;

events
{
use epoll ;
worker_connections 65535;
}

http
{
include mime.types;
default_type application/octet-stream; Linux learning, http:// linux.it.net .cn

#charset utf-8;

server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_ Größe 300m;
 
sendfile on;
tcp_nopush on;

keepalive_timeout 60; IT-Netzwerk, http://www.it.net.cn

tcp_nodelay on;

client_body_buffer_size 512k;
Proxy_connect_timeout 5;
Proxy_read_timeout 60;
Proxy_Send_Timeout 5;
Proxy_Buffer_Size 16K;
Proxy_B-Puffer 4 64K; 🎜> Proxy_busy_buffers_size 128k;
Proxy_temp_file_write_size 128k;
IT Network, http://www.it.net.cn

gzip on;

gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;

#Hinweis: Die durch Proxy_temp_path und Proxy_cache_path angegebenen Pfade müssen sich in derselben Partition befinden.
Proxy_temp_path /data0/proxy_temp_dir;
#Setzen Sie den Namen des Web-Cache-Bereichs auf „cache_one“ und die Speichercache-Speicherplatzgröße auf 200 MB , und es wurde 1 Tag lang nicht darauf zugegriffen. Der Inhalt wird automatisch gelöscht und der Festplatten-Cache-Speicherplatz beträgt 30 GB.
Proxy-Cache-Pfad /data0/proxy_cache_dir Ebenen = 1:2 Tasten_z inaktiv = 1d max_size = 30 g;
Server 192.168.8.44:80 Gewicht=1 max_fails=2 fail_timeout=30s;
Server 192.168.8.45:80 Gewicht=1 max_fails=2 fail_timeout=30s;
}

Server
{

listen 80;

server_name www.it.net.cn 192.168.8.42;
index index.html index.htm;
root /data0/htdocs/www

Standort /
{

#Wenn der Backend-Server Fehler wie 502, 504, Ausführungszeitüberschreitung usw. zurückgibt, wird die Anforderung automatisch an einen anderen Server im Upstream-Lastausgleichspool weitergeleitet, um ein Failover zu erreichen.

Proxy_next_upstream http_502 http_504 Fehler Timeout invalid_header;
Proxy_cache Cache_one;
#Setzen Sie unterschiedliche Cache-Zeiten für verschiedene HTTP-Statuscodes
Proxy_cache_valid 200 304 12h;
        #Kombiniert mit Domainname, URI, Parametern In Nginx hasht den Schlüsselwert und speichert den zwischengespeicherten Inhalt im sekundären Cache-Verzeichnis
Proxy_cache_key $host$uri$is_args$args;
Proxy_set_header Host $host;

Proxy_set_header .8.42/test.txt, Sie können den Cache dieser URL leeren, indem Sie auf http://192.168.8.42/purge/test.txt zugreifen.
location ~ /purge(/.*)

{
#Legen Sie nur die angegebene IP oder den angegebenen IP-Bereich fest, um den URL-Cache zu leeren.
127.0.0.1 zulassen;
192.168.0.0/16 zulassen;
alle verweigern;
Proxy_cache_purge Cache_one $host $1$is_args$args;
}
# Dynamische Anwendungen mit Erweiterungen, die auf .php, .jsp, .cgi enden, werden nicht zwischengespeichert.
location ~ .*.(php|jsp|cgi)?$
{
Proxy_set_header Host $host;
Proxy_set_header X-Forwarded-For $remote_addr;
Proxy_pass http://backend_server ;
}
access_log off;

}
}
Linux learning, http:// linux.it.net.cn




Das Obige stellt die Nginx-Cache-Konfiguration einschließlich der relevanten Aspekte vor. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So konfigurieren Sie Nginx in Windows So konfigurieren Sie Nginx in Windows Apr 14, 2025 pm 12:57 PM

Wie konfiguriere ich Nginx in Windows? Installieren Sie NGINX und erstellen Sie eine virtuelle Hostkonfiguration. Ändern Sie die Hauptkonfigurationsdatei und geben Sie die Konfiguration der virtuellen Host ein. Starten oder laden Nginx neu. Testen Sie die Konfiguration und sehen Sie sich die Website an. Aktivieren Sie selektiv SSL und konfigurieren Sie SSL -Zertifikate. Stellen Sie die Firewall selektiv fest, damit Port 80 und 443 Verkehr.

Wie kann ich überprüfen, ob Nginx begonnen wird? Wie kann ich überprüfen, ob Nginx begonnen wird? Apr 14, 2025 pm 12:48 PM

Verwenden Sie unter Linux den folgenden Befehl, um zu überprüfen, ob Nginx gestartet wird: SystemCTL -Status Nginx Richter basierend auf der Befehlsausgabe: Wenn "aktiv: aktiv (lief) angezeigt wird, wird Nginx gestartet. Wenn "Active: Inactive (Dead)" angezeigt wird, wird Nginx gestoppt.

So überprüfen Sie, ob Nginx gestartet wird So überprüfen Sie, ob Nginx gestartet wird Apr 14, 2025 pm 01:03 PM

So bestätigen Sie, ob Nginx gestartet wird: 1. Verwenden Sie die Befehlszeile: SystemCTL Status Nginx (Linux/Unix), Netstat -ano | FindStr 80 (Windows); 2. Überprüfen Sie, ob Port 80 geöffnet ist; 3. Überprüfen Sie die Nginx -Startmeldung im Systemprotokoll. 4. Verwenden Sie Tools von Drittanbietern wie Nagios, Zabbix und Icinga.

So lösen Sie Nginx403 So lösen Sie Nginx403 Apr 14, 2025 am 10:33 AM

Wie fixiere ich Nginx 403 Verbotener Fehler? Überprüfen Sie die Datei- oder Verzeichnisberechtigungen; 2.Htaccess -Datei prüfen; 3. Überprüfen Sie die Konfigurationsdatei der Nginx; 4. Starten Sie Nginx neu. Weitere mögliche Ursachen sind Firewall -Regeln, Selinux -Einstellungen oder Anwendungsprobleme.

So starten Sie Nginx unter Linux So starten Sie Nginx unter Linux Apr 14, 2025 pm 12:51 PM

Schritte zum Starten von Nginx unter Linux: Überprüfen Sie, ob Nginx installiert ist. Verwenden Sie SystemCTL Start Nginx, um den Nginx -Dienst zu starten. Verwenden Sie SystemCTL aktivieren NGINX, um das automatische Start von NGINX beim Systemstart zu aktivieren. Verwenden Sie den SystemCTL -Status NGINX, um zu überprüfen, ob das Startup erfolgreich ist. Besuchen Sie http: // localhost in einem Webbrowser, um die Standard -Begrüßungsseite anzuzeigen.

So lösen Sie Nginx403 -Fehler So lösen Sie Nginx403 -Fehler Apr 14, 2025 pm 12:54 PM

Der Server verfügt nicht über die Berechtigung, auf die angeforderte Ressource zuzugreifen, was zu einem NGINX 403 -Fehler führt. Zu den Lösungen gehören: Überprüfung der Dateiberechtigungen. Überprüfen Sie die Konfiguration .htaccess. Überprüfen Sie die Nginx -Konfiguration. Konfigurieren Sie Selinux -Berechtigungen. Überprüfen Sie die Firewall -Regeln. Fehlerbehebung bei anderen Ursachen wie Browserproblemen, Serverausfällen oder anderen möglichen Fehlern.

So lösen Sie das Problem der Nginx Cross-Domain So lösen Sie das Problem der Nginx Cross-Domain Apr 14, 2025 am 10:15 AM

Es gibt zwei Möglichkeiten, das Problem mit dem Cross-Domain-Problem mit dem NGINX-Problem zu lösen: Änderungen der Cross-Domänen-Antwort-Header: Fügen Sie Anweisungen hinzu, um Cross-Domain-Anforderungen zu ermöglichen, zulässigen Methoden und Header anzugeben und die Cache-Zeit festzulegen. Verwenden Sie das CORS-Modul: Aktivieren Sie Module und konfigurieren Sie die CORS-Regeln, um Cross-Domain-Anforderungen, Methoden, Header und Cache-Zeit zu ermöglichen.

So lösen Sie Nginx304 Fehler So lösen Sie Nginx304 Fehler Apr 14, 2025 pm 12:45 PM

Antwort auf die Frage: 304 Nicht geänderter Fehler gibt an, dass der Browser die neueste Ressourcenversion der Client -Anfrage zwischengespeichert hat. Lösung: 1. Löschen Sie den Browser -Cache; 2. Deaktivieren Sie den Browser -Cache; 3. Konfigurieren Sie Nginx, um den Client -Cache zu ermöglichen. 4. Überprüfen Sie die Dateiberechtigungen; 5. Datei Hash prüfen; 6. Deaktivieren Sie CDN oder Reverse Proxy -Cache; 7. Starten Sie Nginx neu.

See all articles