nginx cache JS selama satu jam, seperti berikut
location ~ .*\.(js|css)?$ {
expires 1h;
}
Baiklah, ini tiada masalah saya mahu memuat semula cache buat sementara waktu
abc.js?v=123
Sekarang saya telah menyahpenyahnya dalam talian, saya mahu mengalih keluar akhiran dan memulihkan
abc.js
, tetapi ia masih dicache pada masa ini. Bagaimana saya boleh memecahkannya?
Peraturan anda di atas hanya menambah peraturan tamat tempoh pada pengepala
Beritahu penyemak imbas bahawa perkara ini tamat tempoh dalam masa 1 jam
Bukannya nginx menyimpannya
Cache ini merujuk kepada cache penyemak imbas anda (pelanggan, bukan nginx).
Ctrl+R
Atau kosongkan cache penyemak imbas anda dan ia akan menjadi OK.Tidak menggunakan modul pembersihan pembersihan?
renggut-rev
Dengan cara ini, tetapan pengepala nginx tidak akan tamat tempoh.
Menggunakan penyelesaian bahagian hadapan terbaik di Hemisfera Timur - fis, kami mempunyai set penyelesaian khusus.
fis
http://labs.frickle.com/nginx_ngx_cache_purge/README
Lawati 127.0.0.1/purge/abc.js untuk memadamkan fail cache.
Tambahkan parameter --add-module=/path/to/ngx_cache_purge semasa mengkonfigurasi untuk menambah modul pembersihan pihak ketiga ini.
Serupa dengan
expires
max-age
e-tag
Maklumat pengepala ini ialah pengepala cache untuk penyemak imbas bahagian hadapan Contohnya, jika anda hanya menetapkan tamat tempoh selama satu jam, maka penyemak imbas tidak akan meminta fail itu lagi satu jam selepas permintaan selesai , fail cache tempatan digunakan setiap kali. Dalam masa jam ini, hanya penyemak imbas mengosongkan cache atau melumpuhkan cache dalam alat pembangun untuk berkomunikasi dengan pelayan Jika tidak, sebarang perubahan pada fail pada pelayan pada jam ini tidak akan memberi kesan kepada penyemak imbas.