Php 部署到多个服务器

Php 部署到多个服务器,php,deployment,Php,Deployment,我必须将我的php/html/css/etc代码部署到多个服务器上,并且我正在寻找我的软件选项,以便轻松安全地部署到多个服务器上 如果可以将其绑定到我的SVN中,也会有所帮助 有什么建议吗?使用ssh设置无密码公钥身份验证将允许您非常快速地将文件scp到任何服务器(或通过shell脚本实现自动化) 这里有一个简单的教程:我以前用过类似的任务。它为您提供了很大的灵活性。我同意——设置您的svn树,并使用rsync over ssh将树复制到远程位置。rsync将使其快速高效,只复制更改,而不复制完

我必须将我的php/html/css/etc代码部署到多个服务器上,并且我正在寻找我的软件选项,以便轻松安全地部署到多个服务器上

如果可以将其绑定到我的SVN中,也会有所帮助


有什么建议吗?

使用ssh设置无密码公钥身份验证将允许您非常快速地将文件scp到任何服务器(或通过shell脚本实现自动化)

这里有一个简单的教程:

我以前用过类似的任务。它为您提供了很大的灵活性。

我同意——设置您的svn树,并使用rsync over ssh将树复制到远程位置。rsync将使其快速高效,只复制更改,而不复制完整文件


您想将您的svn树导出到某个目录,然后再从那里rsync到远程主机的目录树。

我还忘了提到,如果您使用rsync,您可以将rsync设置为使用ssh,这样您将只传输已更改的文件,从而节省时间和带宽。

如果您在Redhat或Debian上运行,考虑将代码打包成RPM或Debs。然后构建一个yum或dpkg存储库并将您的包放在那里。然后,您可以使用系统的包管理来执行升级/回滚等操作。您甚至可以使用它来自动化该过程


如果您想将其绑定到subversion中,可以为每个新版本创建一个分支。当目录中出现新分支时,使用提交脚本来构建RPM。

非常方便。有一些人使用它(,)来部署PHP代码,这可以通过做一个测试来证明。

我将推荐Capistrano。它非常强大和灵活。我们当前的项目使用Capistrano部署到不同的服务器以及多个服务器。我们向cap命令传递两个参数: 1) 要运行的计算机特定配置选项集的名称,以及 2) 要运行的操作的名称

最后看起来像这样:

cap -f deploy.rb live deploy


当然,默认的用例——一次部署到多台机器——是一个使用Capistrano的doddle,您不需要在要部署到的机器上使用Capistrano。总之,美味的技术

我在一篇关于如何使用Subversion部署您的网站的帖子上做了标记:

我发现capistrano在安装后非常易于使用。对于更复杂的环境,配置文件一开始可能有点混乱,但很快它就变得有价值了。我在生产环境中部署了14台服务器。我还使用多个环境部署到临时服务器。一个怪癖是,Ruby中有一个bug破坏了并行部署,但串行方式在svn导出中并不太糟糕。

您也可以使用它,它是免费的,允许通过ssh进行远程安装。它还使您能够从中心位置管理特定于服务器的配置,并使升级看起来毫无意义。

Capistrano的设置太复杂了。我们发现KwateeSDCM非常简单,只需简单的web界面,无需编写脚本即可使用。我们很快就完成了windows和linux服务器上的开发人员和质量保证人员的部署配置。

doddle(名词):非正式(Brit)一些容易完成的事情:)-
cap -f deploy.rb dev deploy