Konfigurasi cache proksi terbalik Nginx untuk meningkatkan kelajuan akses laman web

王林
Lepaskan: 2023-07-04 22:01:09
asal
2322 orang telah melayarinya

Konfigurasi cache proksi terbalik Nginx untuk meningkatkan kelajuan akses laman web

Pengenalan:
Dalam era Internet, kelajuan akses laman web adalah penting. Tapak web yang dimuatkan dengan perlahan menjadikan pengguna tidak sabar dan boleh menyebabkan pengguna berpusing. Untuk meningkatkan kelajuan capaian laman web, cara biasa adalah mengurangkan beban pada pelayan dan mempercepatkan pemuatan halaman dengan menggunakan cache proksi terbalik. Artikel ini akan memperkenalkan cara menggunakan Nginx untuk mengkonfigurasi cache proksi terbalik untuk meningkatkan kelajuan akses laman web.

1. Apakah cache proksi terbalik Nginx?
Nginx ialah pelayan proksi terbalik HTTP ringan yang boleh memajukan permintaan pelanggan ke pelayan aplikasi bahagian belakang dan menyimpan hasil yang dikembalikan. Apabila permintaan yang sama tiba pada masa akan datang, Nginx boleh terus mengembalikan hasil dalam cache tanpa meminta pelayan aplikasi sekali lagi, sekali gus mempercepatkan pemuatan halaman.

2. Langkah konfigurasi untuk cache proksi terbalik Nginx:

  1. Pasang Nginx
    Mula-mula, kita perlu memasang Nginx pada pelayan. Untuk langkah pemasangan khusus, anda boleh merujuk kepada dokumentasi rasmi Nginx atau gunakan pengurus pakej untuk memasang.
  2. Konfigurasikan Nginx
    Buka fail konfigurasi Nginx dan tambahkan segmen kod berikut dalam blok pelayan:

    proxy_cache_path /path/to/cache levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m;
    Salin selepas log masuk

    Arahan proxy_cache_path di sini digunakan untuk mengkonfigurasi laluan dan kapasiti cache. path/to/cache ialah laluan storan cache, my_cache ialah nama kawasan cache, 10m menentukan saiz kawasan cache, 10g bermaksud kapasiti maksimum keseluruhan cache ialah 10GB dan inactive=60m bermakna kandungan cache akan tamat tempoh jika ia tidak diakses dalam masa 60 minit. proxy_cache_path指令用于配置缓存的路径和容量。path/to/cache是缓存的存储路径,my_cache是缓存区的名称,10m指定了缓存区的大小,10g表示整个缓存的最大容量为10GB,inactive=60m表示缓存的内容在60分钟内没有被访问就过期。

在location块中添加如下代码段:

proxy_cache my_cache;
proxy_cache_valid 200 302 10m;
proxy_cache_valid 404 1m;
Salin selepas log masuk

这里的proxy_cache指令用于启用缓存功能,proxy_cache_valid指令用于设置缓存的有效时间。上面的示例中,对于HTTP状态码为200和302的响应,缓存有效时间为10分钟;对于HTTP状态码为404的响应,缓存有效时间为1分钟。

  1. 配置缓存规则
    除了配置缓存路径和缓存有效时间,我们还可以设置一些缓存规则,以决定哪些请求需要被缓存。在location块中添加如下代码段:

    proxy_cache_key $host$uri$is_args$args;
    proxy_cache_bypass $http_cache_control;
    
    proxy_no_cache $http_pragma $http_authorization;
    Salin selepas log masuk

    上面的示例中,proxy_cache_key用于设置缓存的key,这里使用了请求的host、uri和参数作为key。proxy_cache_bypass用于绕过缓存,这里通过检查HTTP请求头中的Cache-Control字段实现了此功能。proxy_no_cache用于设置完全禁用缓存的条件,这里通过检查HTTP请求头中的PragmaAuthorization

  2. Tambah segmen kod berikut dalam blok lokasi:

    sudo service nginx restart
    Salin selepas log masuk

    Arahan proxy_cache di sini digunakan untuk mendayakan fungsi cache dan arahan proxy_cache_valid digunakan untuk tetapkan masa sah cache. Dalam contoh di atas, untuk respons dengan kod status HTTP 200 dan 302, masa sah cache ialah 10 minit untuk respons dengan kod status HTTP 404, masa sah cache ialah 1 minit;
    Konfigurasikan peraturan caching

    Selain mengkonfigurasi laluan cache dan masa sah cache, kami juga boleh menetapkan beberapa peraturan caching untuk menentukan permintaan yang perlu dicache. Tambahkan segmen kod berikut dalam blok lokasi:
    rrreee

    Dalam contoh di atas, proxy_cache_key digunakan untuk menetapkan kunci cache Di sini, hos, uri dan parameter yang diminta digunakan sebagai kunci. proxy_cache_bypass digunakan untuk memintas cache Fungsi ini dilaksanakan dengan menyemak medan Cache-Control dalam pengepala permintaan HTTP. proxy_no_cache digunakan untuk menetapkan syarat untuk melumpuhkan cache sepenuhnya Fungsi ini dilaksanakan di sini dengan menyemak medan Pragma dan Authorization dalam pengepala permintaan HTTP. .


    Mulakan semula Nginx

    Selepas melengkapkan konfigurasi di atas, simpan dan tutup fail konfigurasi. Kemudian gunakan arahan untuk memulakan semula Nginx:

    rrreee

    1. 3. Senario penggunaan cache proksi terbalik Nginx
    2. Cache proksi terbalik Nginx sesuai untuk tapak web yang kandungannya agak stabil dan tidak dikemas kini dengan kerap. Contohnya, halaman web statik, imej, CSS dan sumber JavaScript boleh dicache untuk mengurangkan permintaan kepada pelayan bahagian belakang dan meningkatkan kelajuan pemuatan tapak web.
    3. Perlu diingatkan bahawa sesetengah kandungan dinamik seperti maklumat log masuk pengguna atau kandungan diperibadikan tidak sesuai untuk caching.

    Kesimpulan:

    Fungsi caching proksi terbalik Nginx boleh mempercepatkan akses tapak web dengan berkesan. Dengan mengkonfigurasi cache proksi terbalik Nginx, kami boleh mengurangkan beban permintaan pada pelayan bahagian belakang dan meningkatkan pengalaman akses pengguna. Walau bagaimanapun, adalah penting untuk mengkonfigurasi peraturan caching dengan betul untuk memastikan masa nyata dan konsistensi kandungan cache. 🎜🎜Rujukan: 🎜🎜🎜Dokumentasi Nginx (https://nginx.org/en/docs/)🎜🎜Menala Nginx untuk Prestasi (https://www.nginx.com/blog/tuning-nginx/) 🎜 🎜🎜Melalui langkah di atas, anda boleh menggunakan konfigurasi cache proksi terbalik Nginx untuk meningkatkan kelajuan akses tapak web. Semoga ia membantu. 🎜

    Atas ialah kandungan terperinci Konfigurasi cache proksi terbalik Nginx untuk meningkatkan kelajuan akses laman web. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

    Label berkaitan:
    sumber:php.cn
    Kenyataan Laman Web ini
    Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
    Tutorial Popular
    Lagi>
    Muat turun terkini
    Lagi>
    kesan web
    Kod sumber laman web
    Bahan laman web
    Templat hujung hadapan