在 Windows 2008 服务器上使用 Apache 为多个站点设置虚拟主机。设置复杂,包括 subversion

在 Windows 2008 服务器上使用 Apache 为多个站点设置虚拟主机。设置复杂,包括 subversion

我正在家里的 Windows 2008 服务器上设置 Apache。它将提供 2 个功能。

  1. Subversion 托管允许我和其他一些人使用版本控制来管理公司文档
  2. 用于网站开发的本地网站托管。需要运行多个网站,因为我通常同时在多个网站上工作。

这是我迄今为止所做的。

  • 我使用一些演示步骤设置了 subversion 和 apache 2.2。
  • 我将默认端口改为 1337。(我是个书呆子)
  • 使用 dyndns.com 我创建了一个域名来转发到我的动态家庭 IP。(company.gotdns.org)
  • 然后我进入我的 company.com 的 DNS 并添加了一条记录以将 repo.company.com 指向 company.gotdns.org
  • 此时,需要访问我的文件存储库的人可以通过访问 repo.company.com/repo 进行访问,到目前为止一切正常。

我的问题出现在下一步,即使用 apache 设置虚拟主机。理想情况下,我希望公司中的其他人可以从家里查看我的本地网站。因此,假设我正在处理 site1,我希望他们能够通过访问 site1.roeland.bythepixel.com 来查看它。同时,我希望 site10.wouter.bythepixel.com 转到他对 site10 的本地设置。

我为此做了以下事情:

  • 我进入 company.com 的 DNS,并添加了一条记录,将 roeland.company.com 指向 company.gotdns.org(转换为我的 IP)。
  • 我在 httpd-vhosts.conf 中添加了代码(列在底部)
  • 我将代码添加到我的主机文件(列在底部)

哈哈,所以这当然不能按预期工作。访问 site1.roeland.bythepixel.com 不会显示我的 test1 网站。有人能指出我可能错在哪里吗?谢谢!

主办方:

127.0.0.1       localhost
127.0.0.1       sensenich.roeland.bythepixel.com
::1             localhost

httpd-vhosts.conf:

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "F:/Current Projects/sensenich.com"
    ServerName sensenich.roeland.bythepixel.com
    ErrorLog "logs/sensenich.roeland.bythepixel.com-error.log"
    CustomLog "logs/sensenich.roeland.bythepixel.com-access.log" common
</VirtualHost>

答案1

我并不是这方面的专家,但在我的 vhosts.conf(在 Windows 上)中,documentroot 的路径看起来有点不同;

<VirtualHost *:80>  
    DocumentRoot /HOMEPAGES/duppen.nl  
    ServerName www.duppen.nl  
    ServerAlias duppen.nl  
    ErrorLog logs/duppen.nl-error.log  
    CustomLog logs/duppen.nl-access.log common  
</VirtualHost>  

然后在 httpd.conf 中添加/修改以下行:
DocumentRoot“W:/HOMEPAGES”

答案2

我进入 company.com 的 DNS,并添加了一条记录,将 roeland.company.com 指向 company.gotdns.org(转换为我的 IP)。

您说得基本正确。如果您希望site1.roeland.company.com被转发,则需要添加通配符 DNS 条目,否则*.roeland.company.com,ONLYroeland.company.com会解析。

相关内容