假设我将有一个独特的开发服务器为多个开发人员共享代码。每个开发人员的代码都将位于其主目录下,sources
因此基本上它将类似于~/<developer_name>/sources
. 该服务器正在运行 Apache 2.4.x。
我需要每个开发人员都可以通过例如访问他们的代码<developer_name>.domain.com
。当然,developer_name
URL 上的 将匹配/home
目录上的名称。
我的解决方案是 Apache 配置上的每个开发人员的虚拟主机,有没有更好的解决方案,我不知道?
我们有类似的设置。
一个问题是您需要为您的服务器拥有一个完整的子域。因此,您将拥有 jdoe.dev.domain.com 和 bsmith.dev.domain.com,而不是 jdoe.domain.com 和 bsmith.domain.com。您几乎可以将“dev.domain.com”视为服务器。
你可能想要做这样的事情:
阿帕奇模块
确保启用了vhost_alias模块。
阿帕奇配置
(关键是VirtualDocumentRoot指令)
DNS 条目
您需要一个 DNS 条目来将 dev.domain.com 及其下的任何内容 (*.dev.domain.com) 指向您的开发服务器。
如果您想摆脱“dev”子域,您必须为每个开发人员创建一个 DNS 条目。
domain.com 区域中的 BIND 记录可能如下所示:
您需要他们拥有自己的域名吗?如果没有,则有内置的 mod_userdir 可以执行此操作。您的开发人员将位于http://developers.domain.com/~<developer_name >/(例如 /~bob/)。您只需将 UserDir 定义为“sources”(默认为 public_html)。
配置通常在 httpd.conf 中,但您只需要以下内容:
您可能还需要
UserDir disable
注释掉。