【问题标题】:What tools/languages do you use for PHP web application deployment?您使用什么工具/语言进行 PHP Web 应用程序部署?
【发布时间】:2010-09-24 04:54:28
【问题描述】:

对于我在 LAMP 上运行的 Web 应用程序,我需要能够在多个服务器上部署数据库迁移和代码更改,并能够在之后测试部署,所有这些都由脚本自动完成。

目前,我在直接使用我的构建工具 (Phing) 与一些特殊的部署/测试任务、shell 脚本或 Ruby 或 Python 等脚本语言之间纠结。

问题是我觉得应该使用构建工具来构建,而不是部署。我也觉得shell脚本很难维护,可读性也不强。

你对这个问题有什么好的建议吗?

【问题讨论】:

    标签: php deployment web-applications build-process


    【解决方案1】:

    很多人here on stackoverflow 似乎真的很喜欢Capistrano

    【讨论】:

    • 感谢您的建议,我会检查它是如何集成到 PHP 环境中的。
    【解决方案2】:

    Rasmus Lerdorf(PHP 的创建者)发布了一个名为 WePloy 的部署工具。

    【讨论】:

      【解决方案3】:

      使用的个人脚本 svn 导出 + rsync

      【讨论】:

        【解决方案4】:

        要部署Web应用程序,PHP或其他,在一些点击,你可以使用fredistrano

        【讨论】:

          【解决方案5】:

          对于 PHP 项目,Phing 是必经之路。部署绝对是它的预期用途之一,考虑到在 PHP 中没有任何“真正的”构建过程——因为脚本没有被编译。

          来自官网:

          如果您发现自己正在编写自定义 处理包装的脚本, 部署或测试您的 应用程序,那么我们建议寻找 在 Phing 框架中。

          Phing 可以做 shell/python/ruby 脚本可以做的所有事情,并且可以在 PHP 中进行扩展,这是它对 PHP 开发人员的主要吸引力。如果您是 PHP 开发人员,为什么要使用 ruby​​/python?

          【讨论】:

          • 实际上,我愿意使用最好的工具来完成这项工作,而不是因为我将它用于我的应用程序而到处使用 PHP。不过,对于一些只了解 PHP 的开发人员来说,这可能会很方便。我将深入研究 Phing,看看它是否符合我的需求。
          • 我一直主要将它用作部署工具,而且效果很好。 SVN 更新、目录权限、测试运行器,随你的便,符合要求 :)
          【解决方案6】:

          我用了什么?

          • svn 提交后挂钩
          • shell 脚本到 rsync
          • perl cgi 脚本到 svn 跨系统切换

          鉴于您的陈述“我也觉得 shell 脚本难以维护且可读性差。”

          【讨论】:

          • 我实际上打算使用 rsync 和 svn 钩子,但使用尽可能少的 shell 脚本。 :)
          猜你喜欢
          • 1970-01-01
          • 2010-09-12
          • 1970-01-01
          • 1970-01-01
          • 2010-10-09
          • 2017-08-13
          • 2012-10-07
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多