http://localhost/ 在 Windows 7 上不起作用。有啥问题?
Posted
技术标签:
【中文标题】http://localhost/ 在 Windows 7 上不起作用。有啥问题?【英文标题】:http://localhost/ not working on Windows 7. What's the problem?http://localhost/ 在 Windows 7 上不起作用。有什么问题? 【发布时间】:2010-10-23 05:41:18 【问题描述】:在 Windows 7(测试版)上打开 http://localhost/ 时遇到很大问题。我安装了这个操作系统,一切都很顺利;当我安装 Wamp 时,我看到 localhost 根本不起作用。我只看到这个错误:
连接失败
Firefox 无法在 localhost 上建立与服务器的连接。
在 Mozilla 和 Explorer 中。
我删除了 Wamp,几周后(即从今天开始的两周)我在 Windows 7 上安装了 NetBeans。我创建了一个测试 php 脚本,当我调试它时,我再次遇到同样的错误。我尝试使用 ip 127 访问它....但仍然相同。有什么问题? 当我安装 NetBeans 时,我将它安装在 8080 端口。
【问题讨论】:
通过阅读您的 cmets,您显然没有收到 404 错误。您应该解决您的问题以反映您实际遇到的错误。 为什么每个人都对答案投反对票? 这里有类似的问题:***.com/questions/410391/wamp-server-not-working 【参考方案1】:如果你安装在8080端口,需要在8080端口访问:
http://localhost:8080 或 http://127.0.0.1:8080
【讨论】:
【参考方案2】:要解决端口 80 问题,请执行以下操作:
从 cmd 以管理员身份:
sc config http start= demand
(等号后面需要一个空格,而不是前面)
重启
以管理员身份运行命令 (netsh http show servicestate
) 以检查端口 80 是否正在使用中
运行此命令后,您可以按如下方式禁用 http.sys:
net stop http
(停止进程)
Sc config http start= disabled
(如果您想永久禁用该服务)
它对我有用。
【讨论】:
在我的情况下,MS Deploy 使用的是端口 80。我可以使用您提到的 netsh http show servicestate 命令找到它。然后我还禁用了您提到的其他服务。它开始工作。感谢分享。 法比奥和尼克你是培根的救星!谢谢大家。 当我运行 sc config http start= demand 它说访问被拒绝?【参考方案3】:编辑您的C:\Windows\System32\drivers\etc\hosts
文件
确保有一个如下所示的条目:
127.0.0.1 localhost
如果有类似的条目
:: localhost
把它注释掉,看起来像这样
\#:: localhost
这应该可以解决您的问题,我过去遇到过这个问题。
【讨论】:
文件的那部分看起来是这样文件的外观: # localhost 名称解析是在 DNS 本身内处理的。 # 127.0.0.1 localhost # ::1 localhost 我尝试更改它们,但是当我保存它们时,我不知道用什么扩展名来保存该文件? 对于我的安装,127.0.0.1 localhost 默认被注释掉了。让它活跃起来。注意:您需要在 Win 7 上具有管理员权限才能保存,如果您通过资源管理器导航,除非您打开管理员权限,否则您甚至不会看到 etc 文件夹。 +1,这也为我修复了它。不敢相信 Windows 7 默认会将此注释掉.... 对于那些在编辑或保存文件时遇到问题的人,您可能需要右键单击文本编辑器图标/可执行文件并“以管理员身份运行”才能成为能够修改系统文件。【参考方案4】:对我来说,是 Skype 导致了问题。一旦我停止Skype,一切正常。我在 Windows 7 x64 上运行 1.7.1 xampp(mysql 和 apache)。
【讨论】:
您可以在Skype的选项中指定是否允许使用端口80和443。 马丁!你摇滚!我现在要深入了解 Skype 的首选项!【参考方案5】:听起来您在任何地方都没有运行 Web 服务器。
您是否尝试过启用 IIS 并首先使用它来显示基本的 html 文件?
程序和功能 -> 打开/关闭 Windows 功能 -> 互联网信息服务
然后,将您的 html 文件放在 C:\inetpub\wwwroot\index.html 并浏览到 http://localhost。
一旦成功,请尝试让 WAMP/php 正常工作。小心端口冲突。
【讨论】:
【参考方案6】:我最初的想法是您在 hosts 文件中缺少一个条目。然而,像“127.0.0.1 localhost”之类的东西,你提到你得到一个 404 错误。这意味着网络服务器正在连接到您的客户端/浏览器并响应对特定网页的请求。
我对 Windows 7 不够熟悉,但是,我很确定它默认不包含网络服务器。此外,除非您使用 netbeans 实际编写代码、构建和运行网络服务器应用程序,否则您不会获得所需的响应。
归根结底......您的问题将是以下之一:
1) 您正在提供静态文档,并且网络服务器未配置为从适当的 DOCROOT 提供文件。这包括用户目录中的 PUBLIC 文件夹。 (基本的 apache 安装包括一个基本的主页)
2) 你有一个动态的网络服务器应用程序,控制器正在查看应用程序路径,以决定显示什么页面或执行什么功能。 (请参阅 MVC - 控制器)。基本上实现不完整。
3) 另一个配置错误:您的网站实际上可能定义了一个虚拟域。 (不是 localhost),因此当您在 URL 中查找 localhost 时,服务器可能未配置为提供默认页面。
【讨论】:
不,我现在看到错误是这样的:无法连接 Firefox 无法在 localhost 建立与服务器的连接。 好吧,如果它无法建立连接,那么问题是网络服务器没有运行,在不同的端口上运行(参见其他 cmets),或者防火墙阻止了访问。 NetBeans 安装了什么样的网络服务器? 当前 netbeans 支持 Glassfish 应用服务器和 tomcat servlet 容器。【参考方案7】:取消注释主机文件中的以下行对我有用,
#127.0.0.1 localhost
【讨论】:
【参考方案8】:你得到一个 404,所以 web 服务器正在运行,它只是找不到文件。
检查 http.conf 文件。如果它指向正确的根目录?
如果您使用不同的端口,请检查 http.conf 以查看 Apache 是否正在侦听正确的端口,或者 Apache 是否正在将该端口上的流量重定向到另一个根目录。
也许发布您的 http.conf 文件可能会有所帮助?
【讨论】:
我是第一次安装 NetBeans,我不知道在哪里可以找到 http.conf 文件,知道它在哪里吗? 这是我从 firefox 收到的错误 无法连接 Firefox 无法在 localhost 建立与服务器的连接。 糟糕。我以为他说了一些关于 404 的事情。不过,检查 http.conf 文件可能仍然是个好主意?【参考方案9】:如果你仍然有这个问题,试试这个:
-
编辑您的主机文件(使用提升的权限)
取消注释“#127.0.0.1 localhost”行(即删除#)
按原样保存文件。没有扩展的主机
在 Win7 中,MS 已决定在 localhost 行中使用表示它在 dns 中处理的 msg 进行注释。我仍然不完全清楚他们在做什么,除了他们可能告诉人们使用 dns 进行 localhost 解析而不是 hosts 文件。反正这样可能更安全。
【讨论】:
【参考方案10】:是的,这对我来说也很痛苦。
所以我所做的就是找到“启动 Wampserver”,只需点击开始按钮并输入。
然后右键单击它,选择属性。 我将它设置为在功能选项卡上的 XP servive pack 3 中运行。 我还选中了“以管理员身份运行此程序”框。
然后我右键单击系统托盘上的 WAMPSERVER,并重新启动所有服务。 这对我来说很完美,希望这对你也有帮助。
罗伯
【讨论】:
【参考方案11】:还有其他程序正在运行吗?微信等...?一些绑定到端口 8080 然后您的网络服务器将无法启动并会导致 404 ,尝试将其绑定到默认应该是的不同端口 80
【讨论】:
【参考方案12】:我收到 404 无法连接错误,然后我将 wampmanager.exe 设置为以 Xp Sp3 运行,它似乎工作正常,这可以通过
-
右键单击它
属性
点击标有“兼容性”的标签
勾选框刚刚在“兼容性”下
模式”
选择 Windows XP(Service Pack 3)
点击应用然后确定
【讨论】:
【参考方案13】:Skype 也干扰了我。我更改了 Skype 设置(在 Skype 中转到工具 > 选项 > 高级 > 连接并取消选中“使用端口 80 和 443 作为传入连接的替代选项”)保存然后关闭 Skype。我有 Win 7 HomePremium 64 位,安装了 Xampp 并且 MySQL 运行良好,但无论我启动 Apache 多少次(控制台显示“Apache 已启动”),我仍然收到“firefox 无法建立连接”错误浏览器。保存 Skype 更改后,Apache 显示绿色的“正在运行”,现在一切正常,谢谢
【讨论】:
【参考方案14】:对我来说,这最终在 80 端口成功了:
您必须通过注册表手动禁用 http.sys 服务:
-
启动 RegEdit:
转到:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP
添加新的 DWORD(32 位)值
将其命名为“NoRun”,不包括引号
双击新属性
在数值数据字段中输入“1”,不包括引号,然后单击确定
重新启动您的计算机
您现在应该发现 Apache 将在端口 80 上启动!
【讨论】:
【参考方案15】:你试过 iis 吗?转到控制面板-> 程序和功能-> 打开或关闭 Windows 功能(侧栏)。尝试安装或重新安装 Internet 信息服务。我有一个带有 iis、.net 和 php 的 Windows 7,它运行良好...
【讨论】:
我不想使用 iis,因为我想尝试 NetBeans。你认为如果我打开 IIS 问题可以解决吗?【参考方案16】:你要安装服务,去wamp->Apache->Service->Install service,然后会弹出一个命令提示符窗口,然后回车,几秒后去同样的路由Services->然后点击启动/恢复服务,你就准备好了
【讨论】:
【参考方案17】:我遇到了完全相同的问题,解决方案是有人已经说过的:
在任务栏中,单击 WAMP 图标。
转到Apache-->服务-->安装服务
然后点击并选择 Apache-->Service-->Start/Resume Service 返回
这将允许 localhost 功能工作(请记住,我已经更改了位于 c:\windows\system32\drivers\etc 下的主机文件以从 127.0.0.1 行中删除 #)
如果您仍需要编辑该文件,则需要右键单击它并选择“属性”。然后转到安全选项卡,然后单击高级按钮。然后您需要选择用户,单击编辑并选择“完全控制”。这将使您能够对其进行编辑。
话虽如此,您还需要按照相同的步骤安装 MySQL 服务。
MySQL-->服务-->安装服务
然后再次右键单击并选择 MySQL-->Service-->Start/Resume Service 返回。
这应该可以在 Windows 7 中解决所有问题!
【讨论】:
【参考方案18】:在安装 Wamp 之前,进入控制面板=> 管理工具 => IIS 管理器并关闭 IIS 服务器。安装 wamp,一切正常。当 IIS 启动时,它也使用端口 80。您可以通过大量更改 wamp 的端口和权限,但我发现这是让 wamp 成功运行的最快和最简单的方法。
【讨论】:
【参考方案19】:尝试在 wwwroot
文件夹 web.config 文件中添加以下标签。这些标签应添加为配置标签的子标签,如下所示。
-configuration-
--system.webServer--
---validation validateIntegratedModeConfiguration="false" ---
--/system.webServer--
-/configuration-
【讨论】:
【参考方案20】:也许 Skype 或其他应用程序正在使用端口 80。 这个你可以签到
工具->设置->高级->连接
【讨论】:
【参考方案21】:看到上面的解决方案都很好。但是每当你得到这个404 eroor,首先看到这个。我相信问题会得到解决......
只需单击右下角任务栏中的 wamp 服务器符号即可转到 httpd.conf 文件-Apache->httpd.conf
... 或 c:\\wampt\\bin\\apache\\apache2.2.1\\conf\\httpd.conf
并在第 46 行近似,您会发现“Listen 80”...只需确保它Listen后写成“80”...如果不是就改成80...你的问题就解决了...
【讨论】:
【参考方案22】:假设在 localhost(到 127.0.0.1)上查找没有问题,您需要确保您的服务器正在侦听 127.0.0.1。
netstat 在 Windows 和 UNIX 中都有效。您可能需要“netstat -a
”来显示侦听器。
【讨论】:
以上是关于http://localhost/ 在 Windows 7 上不起作用。有啥问题?的主要内容,如果未能解决你的问题,请参考以下文章
http://localhost:8080打开tomcat主页的原理是啥
无法在 http://localhost 上启动驱动程序服务