设置本地虚拟主机

设置本地虚拟主机

我正在尝试设置我的域的本地工作副本,并且我修改了其中的“域”文件/etc/apache2/sites-available/,执行了“ sudo a2ensite domain”,然后重新启动了 apache,但我的浏览器没有在本地查找域。我遗漏了什么步骤?

NameVirtualHost domain:80

<VirtualHost domain:80>
  ServerName domain
  DocumentRoot /var/www/domain.com/
</VirtualHost>

我还应该指出,我知道文件夹名称有 .com,而虚拟主机没有。

更新 当我使用 *:80 而不是 domain:80 时,出现以下错误...

[Wed Mar 24 15:22:28 2010] [warn] NameVirtualHost *:80 has no VirtualHosts

答案1

您的 Apache 配置看起来没问题。您的服务器似乎将域地址解析为远程地址。尝试在本地 /etc/hosts 中添加一行来修复此问题。该行应如下所示:

127.0.0.1  domain

如果您的本地 Apache 正在监听其他网络接口,请将 127.0.0.1 替换为正确的 IP 地址

答案2

我认为这个常见问题解答将有助于阐明一些问题。http://wiki.apache.org/httpd/CommonMisconfigurations

NameVirtualHost 指令应该引用一个接口(0.0.0.0、*、192.168.0.1 等)。

类似于

NameVirtualHost *:80

<VirtualHost *:80>
  ServerName domain
  DocumentRoot /var/www/domain.com/
</VirtualHost>

然后,您需要验证域名是否解析为 NameVirtualHost 指令中列出的接口或使用的特定地址。如果您使用 Web 服务器,则可以将域名添加到 127.0.0.1 的本地主机文件,或您使用的任何地址。

相关内容