首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >您首选的php部署策略是什么?

您首选的php部署策略是什么?
EN

Stack Overflow用户
提问于 2009-01-08 20:09:33
回答 13查看 67.3K关注 0票数 161

我正在用PHP开始一个新的项目,我很想从其他开发人员那里得到一些关于他们首选的PHP部署策略的反馈。我喜欢自动化一点,这样一旦提交了更改,它们就可以快速迁移到开发或生产服务器上。

我有使用Capistrano和Ruby进行部署的经验,以及一些基本的shell脚本。

在我自己开始之前,听到其他人在他们的项目中是如何处理这个问题的,那就太好了。

更多信息

目前,开发人员在站点的本地安装上工作,并将更改提交到subversion存储库。初始部署是通过从svn中导出标记版本并将其上传到服务器来完成的。

其他更改通常是通过手动上载更改的文件来实现的。

EN

回答 13

Stack Overflow用户

发布于 2009-01-09 02:48:56

我目前正在部署PHP using Git。使用来自Git的最新副本更新我的生产服务器所需的就是一个简单的git推送生产。这是简单和快速的,因为Git足够聪明,只发送差异,而不是重新发送整个项目。它还有助于在web服务器上保留一个冗余的存储库副本,以防我这一端发生硬件故障(尽管为了安全起见,我也会推送GitHub )。

票数 24
EN

Stack Overflow用户

发布于 2009-04-07 10:30:43

我们使用的是Webistrano,这是Capistrano的一个web前端,我们对它非常满意。

Webistrano允许从SVN、GIT和其他公司进行多阶段、多环境的部署。它具有内置的回滚支持,支持独立的服务器角色,如web、db、app等,并可并行部署。它允许您覆盖多个级别的配置参数,例如每个阶段,并记录每次部署的结果,可以选择将其邮寄出去。

尽管Capistrano和Webistrano都是Ruby应用程序,但部署“菜谱”的语法对于任何PHP程序员来说都足够简单和强大。Capistrano最初是为Ruby on Rails项目构建的,但很容易适应PHP项目。

配置完成后,非程序员甚至可以很容易地使用它,例如部署登台版本的测试人员。

为了提供尽可能快的部署,我们安装了fast_remote_cache方法,该方法更新远程服务器上的svn工作副本缓存,然后硬链接结果。

票数 14
EN

Stack Overflow用户

发布于 2009-01-08 20:24:20

我使用Apache Ant部署到不同的目标(开发人员、QA和live)。Ant是为Java部署而设计的,但它为部署任意文件提供了非常有用的通用案例解决方案。

build.xml文件的语法非常容易学习-您可以定义不同的目标及其依赖项,当您在命令行上调用ant程序时,这些目标及其依赖项就会运行。

例如,我有dev、QA和live的目标,每个目标都依赖于cvsbuild目标,该目标从我们的CVS服务器签出最新的head修订版,将适当的文件复制到build目录(使用fileset标记),然后将build目录rsync到适当的服务器。有一些怪癖需要学习,学习曲线也不是完全平坦的,但我已经用这种方式做了很多年,没有遇到任何麻烦,所以我推荐它适合你的情况,尽管我很好奇我会在这个帖子上看到其他答案。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/425692

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档