Bagaimana Nginx melaksanakan konfigurasi kawalan cache permintaan HTTP
Nginx, sebagai pelayan web berprestasi tinggi dan pelayan proksi terbalik, mempunyai kuasa pengurusan cache dan fungsi kawalan boleh merealisasikan kawalan cache permintaan HTTP melalui konfigurasi. Artikel ini akan memperkenalkan secara terperinci cara Nginx melaksanakan konfigurasi kawalan cache untuk permintaan HTTP dan memberikan contoh kod khusus.
1. Gambaran keseluruhan konfigurasi cache Nginx
Konfigurasi cache Nginx dilaksanakan terutamanya melalui modul proxy_cache, yang menyediakan banyak arahan dan parameter yang boleh mengawal tingkah laku cache dengan berkesan. Sebelum mengkonfigurasi cache, anda perlu memuatkan modul proxy_cache dalam fail konfigurasi Nginx Arahan khusus ialah:
load_module modules/ngx_http_proxy_module.so;
Arahan ini akan memuatkan modul proxy_cache Nginx supaya kami boleh menggunakan arahan kawalan Cache yang berkaitan. .
2. Penjelasan terperinci tentang arahan kawalan cache
proxy_cache_path /data/nginx/cache levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m use_temp_path=off;
location / { proxy_cache my_cache; proxy_cache_valid 200 304 5m; proxy_cache_valid 301 302 1h; proxy_cache_key $host$uri$is_args$args; proxy_cache_use_stale error timeout 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_revalidate on; proxy_cache_min_uses 3; proxy_cache_bypass $http_x_token; proxy_cache_methods GET HEAD; }
Dalam konfigurasi di atas, kami mendayakan kawasan cache bernama my_cache dan menetapkan masa kesahihan cache, kunci cache, strategi kemas kini cache dan parameter lain untuk kod status respons yang berbeza. Parameter ini boleh dikonfigurasikan secara fleksibel mengikut keperluan caching tertentu.
proxy_ignore_headersproxy_ignore_headers Cache-Control Set-Cookie;
proxy_cache_lock on; proxy_cache_lock_timeout 5s;
Berdasarkan arahan kawalan cache di atas, kami boleh menulis contoh konfigurasi Nginx yang lengkap untuk melaksanakan kawalan cache permintaan HTTP. Berikut ialah contoh konfigurasi Nginx yang mudah:
load_module modules/ngx_http_proxy_module.so; http { proxy_cache_path /data/nginx/cache levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m use_temp_path=off; server { listen 80; server_name example.com; location / { proxy_pass http://backend_server; proxy_cache my_cache; proxy_cache_valid 200 304 5m; proxy_cache_valid 301 302 1h; proxy_cache_key $host$uri$is_args$args; proxy_cache_use_stale error timeout 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_revalidate on; proxy_cache_min_uses 3; proxy_cache_bypass $http_x_token; proxy_cache_methods GET HEAD; proxy_ignore_headers Cache-Control Set-Cookie; } } }
Dalam contoh di atas, kami mula-mula memuatkan modul ngx_http_proxy_module, kemudian tentukan kawasan cache bernama my_cache, dan konfigurasikan lokasi proksi dalam blok pelayan, dengan caching dan arahan kawalan cache yang sepadan didayakan. Apabila pengguna mengakses example.com, Nginx akan melaksanakan pengurusan dan kawalan cache berdasarkan peraturan cache yang dikonfigurasikan.
4. Ringkasan
Melalui pengenalan dan contoh di atas, kami mempunyai pemahaman terperinci tentang cara Nginx melaksanakan konfigurasi kawalan cache permintaan HTTP, dan penjelasan terperinci serta demonstrasi arahan berkaitan yang disediakan oleh modul proxy_cache . Konfigurasi cache yang munasabah boleh meningkatkan kelajuan akses dan prestasi tapak web, mengurangkan tekanan pada pelayan bahagian belakang dan mencapai pengalaman pengguna yang lebih baik. Oleh itu, dalam pembangunan aplikasi web sebenar, adalah sangat penting untuk menggunakan fungsi kawalan cache Nginx dengan sewajarnya.
Atas ialah kandungan terperinci Bagaimana Nginx melaksanakan konfigurasi kawalan cache untuk permintaan HTTP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!