我使用 Apache VirtualHosts 在我的网络服务器上运行不同的网站。现在我很难让一个网站正常工作。当我在 Firefox 中浏览该网站时,它显示“Firefox 无法在 www.mydomain.com 找到服务器”,尽管拼写正确。
进一步的 traceroute 和 ping 都解析到正确的 IP,所以我怀疑这是由于 DNS 问题造成的。
我从工作站点复制了 VirtualHost-config 文件并且刚刚更改了服务器上的域和路径,这些是存在的。此外,我检查了该站点是否已启用(使用 a2ensite),重新启动了 apache,重新加载了 apache,但它仍然不起作用。
这是我的虚拟主机文件:
<VirtualHost censored_ip:80>
ServerName mydomain.com
ServerAlias mydomain.com www.mydomain.com
ServerAdmin <myemail>
DocumentRoot /var/www/efin/
<Directory /var/www/efin/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/error_efin.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ServerSignature On
</VirtualHost>
我希望有人能在这里找到错误,因为我不知道该去哪里找了。提前谢谢大家。如果需要,我很乐意提供更多信息。
诚挚的,迈克尔
编辑(2011 年 3 月 8 日):实际上,我可以使用 .com/file.zip 下载 /var/www/efin 内的文件...仅输入 .com 不起作用..
编辑2(2011年8月3日):我的域名是 efinsolutions.com,也许这在排除故障时有帮助。
答案1
www.efinsolutions.com 没有 DNS 记录,只有 efinsolutions.com 有。
只是http://efinsolutions.com生成一个“301 永久移动”到 www.efinsolutions.com,但该网站并不存在。
在 www.efinsolutions.com 上放置一份记录,它就会开始工作。
答案2
尝试从另一台计算机甚至连接到不同 ISP 的计算机进行 ping 操作,或者使用在线 DNS 工具,因为它看起来像 DNS 问题,而正确的 IP 只是被您的操作系统缓存。
答案3
我建议将“<VirtualHost censored_ip:80>”更改为“<VirtualHost *:80>”。
答案4
- 您是否运行过“apache2ctl configtest”(这可能会突出显示一些问题)?
- 错误/访问日志中是否显示任何内容 - 它可能有助于为新站点创建单独的错误/访问日志并检查这些文件
- 如果服务器繁忙,Apache 可能不会立即重启(至少在您执行了 apache2ctl graceful 的情况下不会)。执行显式的“apache2ctl stop”、“ps auxwww | grep apache2 ”并确保它已消失...然后启动。
- 只要您在 /etc/apache2/ports.conf 中有一个 NameVirtualHost ip.add.re.ss:80,将 IP 地址放在 VirtualHost 标记中的 :80 之前就不会有问题。我想我过去曾见过这样的问题:如果我混合使用 '*:80' 和 'xxxx:80' 样式定义,Apache 就会感到困惑。