5

我最近推出了一项服务,这意味着我不能再直接在该网站上工作,或者这样做有风险。

我还没有找到任何“标准”或“最佳”方式来制作开发服务器。我看到的两件事是

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

b) Capistrano(对于 Rails,PHP 有什么东西吗?)


我正在查看的当前解决方案是将服务器的完整副本放在“development.domain.com”上,这样我就可以处理所有事情,我可以简单地将文件复制到主要部分。

这是一个可行的解决方案吗?最佳解决方案是什么?(独立服务器、专用工具等)


编辑该系统由许多开发人员开发。服务器设置已进行了相当大的调整,以允许系统的全部功能和安全性。在我自己的计算机上进行开发不是一个可行的解决方案,也不是在 Intranet 类型的系统上,因为我们的程序员都不在同一个位置。

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

4

4 回答 4

3

三个建议:

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

2)让所有偏离标准配置的东西都采用某种形式的源代码控制。这意味着您的 apache 配置、php.ini、数据库配置等。然后,当您设置登台和开发服务器时,您可以(相对)确保所有服务器上的一切都是相同的,否则您只是在猜测。

3) 查看某种构建脚本,无论是 ant、phing还是任何您可以用来在任何机器上从头开始可靠构建环境的东西。

你可以做很多其他的事情,但是如果你实现了这三个,你就可以轻松设置开发/登台服务器。这还将为您提供额外的好处,即确保您的所有开发人员在进行开发时也有类似的环境。

于 2010-10-21T19:59:15.373 回答
2

http://www.wampserver.com/适用于 Windows

或者

www.mamp.info for mac

或者

加载虚拟机

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

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

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

-马里奥

于 2010-10-21T19:01:34.253 回答
1

您的开发、登台和生产环境应该完全相同,否则当您在环境之间移动时,您可能会冒着改变某些东西的风险。显然,您的开发环境将具有开发设置(例如 PHP 的 display_errors on,可能是远程调试器等),否则它们应该尽可能相同。

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

于 2010-10-21T19:38:16.977 回答
0

我开始使用 git 存储库作为起点。主要开发是在我的本地 Mac 上完成的。在某个时刻,我推送更改并将它们拉到开发服务器上,在那里进行进一步的测试。如果一切正常,我会在开发服务器上拉东西。我认为这或多或少是 capistrano 的工作方式。我为这些任务编写了一个中央脚本,因此我可以使用单个命令更新开发或生产服务器。

于 2010-10-21T18:51:08.663 回答