我为一个提供多个 Web 服务的服务器设置了 Varnish。现在我想删除其中一个 Web 服务,因此我从服务器中删除了此 Web 服务的文件,删除了此 Web 服务的 Apache VirtualHost 并重新启动了 Apache。但是,对此 Web 服务的请求仍然会返回响应。
所以我认为这些数据仍然缓存在 Varnish 中,我所要做的就是清除这些缓存数据。但这不起作用。我尝试过的命令如下:
varnishadm -T :6082 -S /etc/varnish/secret "ban.url /"
varnishadm -T :6082 -S /etc/varnish/secret "ban.url ."
varnishadm -T :6082 -S /etc/varnish/secret "ban req.http.host ~ DOMAIN"
varnishadm -T :6082 -S /etc/varnish/secret "ban req.http.host == DOMAIN"
我也重新启动了 Varnish 服务,但是没有效果。
我对 Varnish 不是很熟悉,但这些是我在谷歌搜索如何清除 Varnish 缓存后找到的一些命令。但也许我忽略了一些简单的东西?
答案1
作为一种解决方法,我重新创建了 VirtualHost,但从其文档根目录中删除了所有文件。这样,Varnish 就会返回正确的 404 Not Found 响应。这对于我的情况来说已经足够了,但这并不是一个真正好的解决方案。