创建网站和部署它们的良好工作流程?

A good workflow for creating websites and deploying them ?

我目前有一个便携式 Apache,mysql 和 php 服务器 zip,我为我工作的每个网站提取这些文件,当我想上传文件时,我只是通过 ftp到服务器。

是否有任何类型的程序可以自动执行新项目的入门过程?就像我可以只点击一个按钮,它会创建自己的 'sandboxed' 网络服务器,然后通过选项或其他东西它可以自动复制一个基本的 smarty(模板引擎)设置或以某种方式管理包,这样我可以始终使用最新版本的 jQuery、html5boilerplate 等

我知道 linux 存在诸如 ansible 之类的东西,这使得在多台服务器上设置东西变得更容易..但我想知道是否有适合普通开发人员的某种更小的规模?

我是否坚持只复制和粘贴文件?

根据您提供的有限信息,假设要将其部署到 Linux 服务器,我会推荐以下内容:

  1. 删除 zip 文件
  2. 通过包管理器安装 php、php 模块、apache 和其他任何东西 (apt/yum)
  3. 为像 bower 这样的 Web 应用程序使用服务器端包管理器来安装像 jQuery.
  4. 这样的东西
  5. 将您拥有的任何特定于应用程序的配置提取到单独的 area/directory 结构中。我认为每个项目都会有所不同
  6. 将配置放入 github
  7. 使用新的 github 存储库作为通过 Ansible 进行自定义的基础。 Ansible playbook 的存在是为了让普通开发人员更轻松。您可以轻松编写剧本来安装所有必要的软件包、配置软件包并部署您的应用程序(如果它在 github 中会更容易,因为有可靠的 git 模块)

通过精心设计的 ansible 方法,您可以使用同一组 playbook 进行部署和更新。您还将受益于确保您的部署从配置的角度来看都是同步的。

这个答案可以根据更确切的要求进一步扩展