Localhost无法正常工作

时间:2014-06-05 04:29:26

标签: apache xampp localhost wamp hosts

我花了一天这个问题,我无法修复它。

每当我尝试访问我的本地主机或键入127.0.0.1时,我正在使用的浏览器返回如下错误:“Firefox无法在www.localhost.com找到服务器地址。”(我是我是法国人,我翻译了这个问题)。

Google Chrome和127.0.0.1也出现同样的问题。我试过XAMPP和WAMP,但仍然没有。我的Apache httpd.conf似乎很好,我试图改变端口(8080,81,8800)。它仍然无法正常工作。我的Skype并不是开放式的VMware Workstation。没有程序阻止访问端口80或443.

我已经使用localhost进行了ping测试,并且everthing没问题,但我无法访问WAMP或XAMP的索引页。

奇怪的是我可以访问localhost / phpmyadmin和其他类似的页面。

我认为我的问题出在Windows的hosts文件中,但对我来说似乎没问题:

# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host

# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost

127.0.0.1 localhost

::1 localhost

为什么我要考虑hosts文件?因为我在XAMPP和WAMP中的vhost不起作用。也许我错了,但这个问题让我抓狂!

感谢您的帮助

4 个答案:

答案 0 :(得分:0)

  

奇怪的是我可以访问localhost / phpmyadmin等   这样的页面。

听起来像你的主机文件很好。有些事情阻止Apache启动并绑定到您的端口。

我对Windows不太熟悉,但from the documentation

  

Apache启动期间的任何错误都会记录到Windows事件日志中   在Windows NT上运行时。这种机制充当了这些机制的备份   Apache尚未准备好使用error.log文件的情况。   您可以使用事件查看Windows应用程序事件日志   观众,例如开始 - 设置 - 控制面板 - 管理工具 -   事件查看器。

看看是什么阻止Apache启动。

答案 1 :(得分:0)

如果您已经定义了虚拟主机,这是一个非常好的主意,那么您需要在HOSTS文件中定义vhosts名称。

例如,hosts文件:

127.0.0.1 localhost
::1 localhost

127.0.0.1 vhost1.dev
::1 vhost1.dev

127.0.0.1 vhost2.dev
::1 vhost2.dev

否则Windows无法知道在哪里查找它们。

localhost无法正常工作的另一种可能性是损坏的HOSTS文件。尝试删除它并使用非记事本编辑器重新创建它。

此外,当您更改HOSTS文件时,您需要重新启动dmscache服务' DNS Client'通过重启或更好地运行命令窗口使用"以管理员身份运行"并且这样做

net stop dnscache
net start dnscache

激活主机文件中的新条目。

答案 2 :(得分:0)

我现在不能帮助你,这是我在重新启动Apache时在日志中得到的内容

[Thu Jun 05 15:41:13.480163 2014] [mpm_winnt:notice] [pid 9984:tid 392] AH00422: Parent: Received shutdown signal -- Shutting down the server.
[Thu Jun 05 15:41:15.481278 2014] [mpm_winnt:notice] [pid 6728:tid 268] AH00364: Child: All worker threads have exited.
[Thu Jun 05 15:41:15.504279 2014] [mpm_winnt:notice] [pid 9984:tid 392] AH00430: Parent: Child process 6728 exited successfully.
[Thu Jun 05 15:41:20.536567 2014] [ssl:warn] [pid 9648:tid 392] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Thu Jun 05 15:41:20.735578 2014] [ssl:warn] [pid 9648:tid 392] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Thu Jun 05 15:41:20.757580 2014] [mpm_winnt:notice] [pid 9648:tid 392] AH00455: Apache/2.4.9 (Win32) OpenSSL/1.0.1g PHP/5.5.11 configured -- resuming normal operations
[Thu Jun 05 15:41:20.757580 2014] [mpm_winnt:notice] [pid 9648:tid 392] AH00456: Apache Lounge VC11 Server built: Mar 16 2014 12:13:13
[Thu Jun 05 15:41:20.757580 2014] [core:notice] [pid 9648:tid 392] AH00094: Command line: 'C:\\xampp\\apache\\bin\\httpd.exe -d C:/xampp/apache'
[Thu Jun 05 15:41:20.758580 2014] [mpm_winnt:notice] [pid 9648:tid 392] AH00418: Parent: Created child process 3700
[Thu Jun 05 15:41:21.108600 2014] [ssl:warn] [pid 3700:tid 268] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Thu Jun 05 15:41:21.274609 2014] [ssl:warn] [pid 3700:tid 268] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Thu Jun 05 15:41:21.296610 2014] [mpm_winnt:notice] [pid 3700:tid 268] AH00354: Child: Starting 150 worker threads.

昨天,我设法摆脱了[ssl:warn] [pid 3700:tid 268] AH01909,但这不是问题所在。

在我的Windows事件查看器中,没有任何更改,在重新启动的同时没有报告任何内容。

注意:我已经卸载了当前的防病毒软件(我现在没有推荐),我的Windows防火墙似乎无法阻止与localhost的连接。

答案 3 :(得分:0)

好的,我已经完成了RiggsFolly告诉我的事情。我删除了我的hosts文件并创建了一个新文件。我重启了我的dmscache服务。之后,我决定为我的localhost创建一个虚拟主机。在我的httpd.conf中,我检查了虚拟主机是否为inlucde

Include conf/extra/httpd-vhosts.conf

在我的httpd-vhosts.conf中写道:

<Directory "/xampp/htdocs">
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

<VirtualHost *:80>
    ServerName localhost
    ServerAdmin webmaster@das.com
    DocumentRoot /xampp/htdocs/
    <Directory "/xampp/htdocs/">
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

现在一切似乎都有效,我可以在我的主机文件中创建其他具有自定义名称的虚拟主机。