0

我是 webistrano 的新手,如果这是一件小事,我深表歉意......

我正在使用 webistrano 将 php 代码部署到多个生产服务器,这一切都很好。我的问题是我需要在代码更新后清除缓存服务器(清漆缓存)上的 HTML 缓存。我不知道如何构建将在 webistrano 机器上执行的配方(并将运行将清除缓存的相关 shell 脚本)而不是在每个部署目标机器上执行。

谢谢您的帮助,

亚里夫

4

2 回答 2

0

感谢你的回答。实际上,除了清除缓存之外,我还需要做更多的事情,所以我将在本地执行一个 bash 脚本,如下所述: 如何在本地执行 Capistrano 任务?

于 2013-03-15T19:50:59.800 回答
0

最简单的方法是在 deploy:restart 中使用适当的参数执行 varnishadm 工具

  set :varnish_ban_pattern, "req.url ~ ^/"
  set :varnish_terminal_address_port, "127.0.0.1:6082"
  set :varnish_varnishadm, "/usr/bin/varnishadm"

  task :restart, :roles => :web do
    run "#{varnish_varnishadm} -T #{varnish_terminal_address_port} ban \"#{varnish_ban_pattern}\"" 
  end
于 2013-03-13T20:17:19.513 回答