Varnish sedang digunakan di situs web Wordpress.
Saya ingin membersihkan Varnish untuk satu URL, bukan seluruh domain.
Dengan perintah ini saya bisa memulai ulang Varnish untuk seluruh domain:
varnishadm -T :6082 -S /etc/varnish/secret 'ban req.http.host ~ \"http://www.foo.com\" && req.url ~ \"^/\"'
Namun saya ingin membersihkan pernis hanya untuk satu url.
Ex: www.foo.com/url_to_be_purged
Saya sudah mencoba perintah sebelumnya menggantikannya dengan URL tunggal:
varnishadm -T :6082 -S /etc/varnish/secret 'ban req.http.host ~ \"http://www.foo.com/url_to_be_purged\" && req.url ~ \"^/\"'
Tapi tidak berhasil, URL masih berupa HIT
Varnish.
Ada ide tentang bagaimana saya bisa mencapai ini?
MEMPERBARUI
Seperti yang disarankan jawaban ghloogh, saya sudah mencoba perintah berikut:
varnishadm -T :6082 -S /etc/varnish/secret ban "req.http.host == http://www.foo.com && req.url == http://www.foo.com/url_to_be_purged"
Saya juga mencoba variasi ini:
varnishadm -T :6082 -S /etc/varnish/secret ban "req.http.host == http://www.foo.com && req.url == /url_to_be_purged"
Tapi saya masih mendapatkan HIT
di URL dan datanya tidak diperbarui
Jawaban:
Anda tidak perlu menentukan skema untuk nama host dan Anda dapat menggunakan pencocokan ketat alih-alih regex:
sumber
Anda dapat mencoba yang berikut ini:
bekerja untukku.
sumber
sudo
jawaban yang lain. Ini mungkin lebih baik sebagai komentar.