让我描述一下我需要解决的问题:
有一个沙盒服务器(Debian),每个开发人员都有自己的用户帐户。我需要提供一种简单快捷的方法来在不同端口上运行/停止任意数量的 nginx 实例,用于不同的项目。这些将仅由 QA 用于测试目的。
例如:sandbox.example.com:4001
Alice 运行一个指向文件夹的 服务器/home/alice/web/staging_2014_09_24
Bob 运行三台服务器:
sandbox.example.com:5123 -> /home/bob/www/dev_2014_09_24_login_fix sandbox.example.com:5124 -> /home/bob/www/staging_2014_09_20 sandbox.example.com:5126 -> /home/bob/www/testing_release_features
每个文件夹都包含来自 Git 的一些 PHP 代码分支。
问题:
1. 有没有简单、常用的方法来实现这一点?我现在想到的解决方案是编写一个脚本,该脚本将为 nginx 创建参数化配置,然后使用它运行一个新的服务器实例。它可以像这样执行:./serverManager start www/staging_2014_09_20 5124
或者./serverManager stop 5124
2. 我是否还需要为每个服务器生成新的 php-fpm 进程,或者我可以使用一个通用实例?