设置暂存/开发服务器的最佳/更好/最佳方式

时间:2010-10-21 18:45:24

标签: php linux development-environment staging

我最近推出了一项服务,这意味着我无法再直接在网站上工作,或者我冒了风险。

我无法找到任何“标准”或“最佳”方式来制作开发服务器。我见过的两件事是

a)使用GIT或SVN来托管数据(这不能解决我的问题,我需要能够在某处开发,最好不是我的家用电脑)

b)Capistrano(对于Rails,还有PHP的东西吗?)


我正在考虑的当前解决方案是在“development.domain.com”上放置服务器的完整副本,然后允许我处理所有内容,我可以简单地将文件复制到主要部分

这是一个可行的解决方案吗?什么是最佳解决方案? (单独的服务器,特殊工具等)


EDIT 该系统由许多开发人员开发。服务器设置已经过大幅调整,以实现系统的全部功能和安全性。在我自己的计算机上进行开发不是一个可行的解决方案,也不是内联网类型的系统,因为我们的程序员都不在同一个位置。

我正在寻找一种服务器上的解决方案。

4 个答案:

答案 0 :(得分:3)

三点建议:

1)您在确定您的源代码采用某种形式的源代码控制(git和svn都是很好的选择)方面走在正确的轨道上。这应该是优先级#1。

2)从某种形式的源代码控制中获得偏离标准配置的一切。这意味着您的apache配置,您的php.ini,数据库配置等。然后,当您设置您的暂存和开发服务器时,您可以(相对)确保所有服务器上的所有内容都相同,否则您只是在猜测。 / p>

3)查看某种构建脚本,ant,phing或任何可用于在任何计算机上从头开始可靠构建环境的脚本。

您可以做很多其他事情,但如果您实施这三项,您将能够轻松设置开发/临时服务器。这也将为您提供额外的好处,确保您的所有开发人员在进行开发时也具有类似的环境。

答案 1 :(得分:2)

对于Windows

http://www.wampserver.com/

www.mamp.info for mac

加载虚拟机

就个人而言,我在mac上进行编程,使用suse或redhat为服务器测试环境运行VMWare。我过去使用过mamp,效果很好;但有时我喜欢在真正的操作系统中工作。

那,或者设置一个物理测试服务器。 PHP /(DB的选择)现在可以在任何东西上运行(mac,windows,linux)

根据您的操作方式,您可以直接在生产服务器上安装VMWare并在那里开发;也就是说,如果你自己运行服务器。如果您的并置或共享主机,您可能无法做到这一点。

-Mario

答案 2 :(得分:1)

您的开发,登台和生产环境应完全相同,否则您在环境之间移动时可能会发生爆炸变更的风险。显然,您的开发环境将具有开发设置(例如,PHP的display_errors,可能是远程调试器等),但除此之外它们应尽可能相同。

正如其他人提到的那样,如果你没有使用版本控制,那么你就是在寻找麻烦。这不仅是一个很好的开发实践,而且还可以简化不同环境之间的部署。当有多个开发人员在项目上工作时尤其如此。

答案 3 :(得分:0)

我开始使用git存储库作为起点。主要开发在我的本地mac上完成。在某个时刻,我推动更改并将其拉到开发服务器上,进行进一步的测试。如果一切都很好,我在开发服务器上拉东西。我认为这或多或少都是卡皮斯特拉诺的作品。我为这些任务编写了一个中心脚本,因此我可以使用单个命令更新开发或生产服务器。