Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Nginx-Reverse-Proxy-Cache-Konfiguration zur Beschleunigung des Zugriffs auf statische Webseiten

Nginx-Reverse-Proxy-Cache-Konfiguration zur Beschleunigung des Zugriffs auf statische Webseiten

PHPz
PHPzOriginal
2023-07-04 18:09:071568Durchsuche

Nginx-Reverse-Proxy-Cache-Konfiguration zur Beschleunigung des statischen Webseitenzugriffs

Einführung:
Mit der rasanten Entwicklung des Internets ist die Zugriffsgeschwindigkeit zu einem sehr wichtigen Faktor im Website-Betrieb geworden. Um die Zugriffsgeschwindigkeit von Webseiten zu verbessern, können wir die Nginx-Reverse-Proxy-Caching-Technologie verwenden, um Webseiten zu beschleunigen. In diesem Artikel wird erläutert, wie Sie mit Nginx den Reverse-Proxy-Cache konfigurieren, um statische Webseiten zu beschleunigen.

Nginx-Reverse-Proxy-Cache-Konfiguration:

  1. Installation von Nginx:
    Zuerst müssen Sie den Nginx-Server installieren, der über Paketverwaltungstools wie apt-get und yum installiert werden kann.
  2. Nginx-Reverse-Proxy konfigurieren:
    Öffnen Sie die Nginx-Konfigurationsdatei (normalerweise unter /etc/nginx/nginx.conf) und suchen Sie die Serverteilkonfiguration. Fügen Sie unter Server den folgenden Code hinzu:
location / {
    proxy_pass http://backend;
    proxy_cache my_cache;
    proxy_cache_valid 200 304 12h;
    proxy_cache_valid any 5m;
    proxy_cache_key $host$scheme$request_uri;
    proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504;
    proxy_cache_background_update on;
    proxy_cache_lock on;
    proxy_cache_lock_timeout 5s;
    proxy_cache_lock_age 10s;
    proxy_ignore_headers Cache-Control;
    proxy_ignore_headers Set-Cookie;
    proxy_ignore_headers Expires;
    add_header X-Proxy-Cache $upstream_cache_status;
}

Erklären Sie die obige Konfiguration:

  • proxy_pass: Geben Sie die Backend-Serveradresse des Reverse-Proxys an, bei der es sich um eine lokale Portnummer oder einen Domänennamen handeln kann. proxy_pass:指定反向代理的后端服务器地址,可以是本地的端口号或域名。
  • proxy_cache:指定缓存的名称,在Nginx的配置文件中需要另外定义。
  • proxy_cache_valid:指定缓存数据的有效时间,这里设置200和304状态码的缓存时间为12小时,其他状态码的缓存时间为5分钟。
  • proxy_cache_key:指定缓存数据的唯一标识,这里使用域名、协议和请求URI来生成。
  • proxy_cache_use_stale:设置当后端服务器错误时是否使用过期的缓存。
  • proxy_cache_background_update:设置是否在后台更新缓存数据。
  • proxy_cache_lock:设置是否启用缓存锁,以避免多个请求同时更新缓存。
  • proxy_ignore_headers:设置忽略的响应头,这里忽略了Cache-Control、Set-Cookie和Expires。
  • add_header:添加响应头,用于显示缓存命中状态。
  1. 配置Nginx缓存:
    打开Nginx的主配置文件,在http部分的配置中添加如下代码:
proxy_cache_path /path/to/cache levels=1:2 keys_zone=my_cache:50m inactive=24h max_size=500m;

解释上述配置:

  • proxy_cache_path
  • proxy_cache: Gibt den Namen des Caches an, der separat in der Nginx-Konfigurationsdatei definiert werden muss.
    proxy_cache_valid: Geben Sie die Gültigkeitszeit der zwischengespeicherten Daten an. Hier wird die Cache-Zeit der Statuscodes 200 und 304 auf 12 Stunden und die Cache-Zeit anderer Statuscodes auf 5 Minuten festgelegt.

  1. proxy_cache_key: Gibt die eindeutige Kennung der zwischengespeicherten Daten an, die anhand des Domänennamens, des Protokolls und des Anforderungs-URI generiert wird.
proxy_cache_use_stale: Legen Sie fest, ob abgelaufener Cache verwendet werden soll, wenn ein Backend-Serverfehler auftritt.


proxy_cache_background_update: Legen Sie fest, ob Cache-Daten im Hintergrund aktualisiert werden sollen.

proxy_cache_lock: Legen Sie fest, ob die Cache-Sperre aktiviert werden soll, um zu verhindern, dass mehrere Anfragen gleichzeitig den Cache aktualisieren.

proxy_ignore_headers: Setzt ignorierte Antwortheader, Cache-Control, Set-Cookie und Expires werden hier ignoriert.


add_header: Antwortheader hinzufügen, um den Cache-Trefferstatus anzuzeigen.

🎜
    🎜Nginx-Cache konfigurieren: 🎜Öffnen Sie die Hauptkonfigurationsdatei von Nginx und fügen Sie den folgenden Code in die Konfiguration des http-Teils ein: 🎜🎜
    sudo service nginx restart
    🎜Erklären Sie die obige Konfiguration: 🎜🎜🎜proxy_cache_path code>: Geben Sie den Cache-Pfad, die Cache-Ebene, den Cache-Bereich, die Inaktivitätszeit und die maximale Cache-Größe an. 🎜🎜🎜🎜Starten Sie den Nginx-Server neu: 🎜Nach Abschluss der obigen Konfiguration speichern und beenden Sie die Konfigurationsdatei und starten Sie den Nginx-Server mit dem folgenden Befehl neu: 🎜🎜rrreee🎜Beispielergebnisse: 🎜Nach der obigen Konfiguration, wenn der Benutzer auf die zugreift Auf der Website wird Nginx anhand der Cache-Einstellungen beurteilt. Wenn die entsprechende statische Webseitendatei im Cache vorhanden ist, werden die zwischengespeicherten Daten direkt zurückgegeben, wodurch die Beschleunigung der Webseite realisiert wird. 🎜🎜Fazit: 🎜Durch die Konfiguration des Nginx-Reverse-Proxy-Cache können wir schnell eine Zugriffsbeschleunigung für statische Webseiten erreichen. Durch die richtige Konfiguration von Parametern wie Cache-Gültigkeitsdauer, Cache-Schlüssel und Cache-Pfad können die Zugriffsgeschwindigkeit und das Benutzererlebnis von Webseiten weiter verbessert werden. Gleichzeitig kann der Nginx-Reverse-Proxy-Cache auch die Belastung des Back-End-Servers reduzieren und die Stabilität und Zuverlässigkeit des Systems verbessern. 🎜🎜Zusammenfassung: 🎜In diesem Artikel wird erläutert, wie Sie die Nginx-Reverse-Proxy-Cache-Konfiguration verwenden, um den Zugriff auf statische Webseiten zu beschleunigen. Mit der richtigen Konfiguration kann die Zugriffsgeschwindigkeit der Website verbessert und die Belastung des Back-End-Servers reduziert werden. Wir hoffen, dass die Leser es anhand des in diesem Artikel bereitgestellten Beispielcodes entsprechend ihren eigenen Bedürfnissen konfigurieren und so die Leistung und Benutzererfahrung der Website verbessern können. 🎜

Das obige ist der detaillierte Inhalt vonNginx-Reverse-Proxy-Cache-Konfiguration zur Beschleunigung des Zugriffs auf statische Webseiten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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