【问题标题】:WAMP is not responding to external requestsWAMP 没有响应外部请求
【发布时间】:2017-02-13 11:20:58
【问题描述】:

已安装 WAMPServer

版本:3.0.4
操作系统类型:64 位
阿帕奇:2.4.18
PHP:5.6.19 / 7.0.4(已检查 5.6.19)
MySQL : 5.7.11

我已尝试查看较旧的溢出问题和答案,并尝试按照他们所说的进行操作,但是,我仍然与 wampserver 没有任何连接。

我做了什么来测试

  1. 使用主机笔记本电脑上的 localhost 检查 wampserver 是否正常运行 [成功]
  2. 在主机上使用我的 IP 检查 wampserver 是否正常运行 [SUCCESS]
  3. 在网络上的其他设备上使用我的 IP 来尝试访问目录中服务器的 php 文件。 [失败]
  4. 使用网络上的其他设备 ping 我的主机 [请求超时 x4]
  5. 使用 tracert 命令替代 4 [请求超时]


我对服务器做了什么

  1. 修改httpd.conf

    听 12.34.56.78:80//评论
    听 0.0.0.0:80
    听 [::0]:80

    动态共享对象 (DSO) 支持//已评论 LOAD MODULE 的杂项

    服务器名称 localhost:80

    拒绝访问整个服务器文件系统。你必须 明确允许访问其他网站中的 Web 内容目录 下面的块。

Directory//This directory tag has no reference to server
    AllowOverride All
    Require all granted
Directory

DocumentRoot "E:/Server/wamp64/www" 
Directory "E:/Server/wamp64/www/"
    Options Indexes FollowSymLinks 
    AllowOverride All 
    # onlineoffline tag - don't remove
    Require all granted 
Directory

我对主机笔记本电脑做了什么

  1. 全新安装 WAMP
  2. 备份原httpd.conf
  3. 已编辑 httpd.conf(参见上文)
  4. [FAILED]为端口 80 添加规则以启用所有 - 已删除
  5. 禁用端口 80 的所有入站规则
  6. 在出站中查找端口 80 [NONE] 的规则

我描述的所有步骤都不起作用。没有防火墙配置和 WAMP 配置经验。并且除了 localhost 没有虚拟主机

P/S:我尝试测试的示例链接是 1.1.1.1/testPHP/testPHP.php。主机是Win10,而在类似网络上测试的设备是XP。非常感谢任何建议。

【问题讨论】:

  • 浏览器上显示“连接超时”消息中没有连接。
  • 这可能会帮助你,浏览所有答案,任何人都可能会帮助你。 superuser.com/questions/432794/…
  • “我的 IP”完全错误。每个接口都有自己的 IP,甚至可以有多个 IP。你说的是公网IP吗?
  • 卸载 WAMPserver。然后手动删除 `\wamp` 文件夹和所有子文件夹,再次安装 WAMPServer 并更改任何内容。然后在how to create a Virtul Host阅读这篇文章
  • @DanFromGermany 不是公共 IP。公共是1.9.xxx.xxx,我使用的IP是192.168.xxx.xxx

标签: php apache wampserver


【解决方案1】:

apache 配置似乎正确。

如果您在服务器或客户端上使用 Wifi,请勾选此项

检查路由器/AP 是否启用了称为 Wifi 隔离或客户端隔离的功能。

我查看了与您类似的路由器,在您的路由器的无线基本设置中有一个名为 Client Isolation 的选项。取消选中它,保存并重试。

在 Windows 防火墙上检查此项

  1. 按下键盘上的 WindowsKey+R,写入 control.exe。按回车
  2. 双击Windows Firewall
  3. 在左侧竖条上选择Advanced Settings
  4. 点击Inbound Rules
  5. 在右侧窗格中单击New Rule...
  6. 选择Port并点击Next button
  7. 在顶部保留TCP 选项已选中。在下面选择Specific local ports 并在那里写80 或你的apache 使用的端口。查看 apache 配置上的 Listen 行,您应该在这里写 80。按 Next
  8. 保持选中Allow the connection,然后按Next
  9. 选择要用于此规则的防火墙配置文件。如果您怀疑,请选择所有。按Next
  10. 设置规则名称,然后按Finish

再试一次;-)

【讨论】:

  • 这就是我所做的(写在“我对主机笔记本电脑所做的事情”第 4 项中。这次尝试仍然有时间。要重新启动笔记本电脑再次测试。
  • 经过测试,无法正常工作。我正在登录路由器进行修补,我会回来提供更多信息
  • 我认为问题在于端口转发,因为这篇文章建议 superuser.com/questions/432794/… 但我尝试使用 DLink-2720U 进行端口转发但没有成功。需要帮助
  • 好的,我看到了失败的文本,但我不知道你是否做了完整的测试。我编辑了答案,添加了与您的路由器相关的内容,因为我认为您正在使用 wifi 连接进行测试。
  • 不幸的是,Dlink-2750U(我当前连接的路由器)在高级>高级无线设置>用户隔离中确实具有此功能。它设置为关闭
【解决方案2】:

发现问题。 Win 10 显然有这个我已经忘记的设置 - 使这台 PC 可被发现(关闭)

出于隐私考虑,我在使用 Win 10 的鼎盛时期将其关闭。现在可以访问了。下一步是找出被禁止的访问。

编辑

这篇文章的罪魁祸首是 Windows 10 操作系统设置。为了使所有设置正常工作(假设此人已对 httpd.conf 和防火墙和/或路由器进行了所有修改),必须检查托管服务器的 PC 是否可在网络设置中发现。

如何确保它被发现

  1. 左键单击任务栏上的网络图标(局域网或 WiFi)打开网络设置,然后单击最底部图标正上方的网络设置。
  2. 选择高级设置
  3. 在使此 PC 可发现项下,将有一个切换按钮。确保按钮已打开,否则,左键单击该特定按钮。

【讨论】:

  • 现在检查是否添加入站规则,或者禁用防火墙以再次测试。
  • 是的,我想通了,apache 上的其余设置因为我重新安装了 wamp,所以所有设置都需要本地。问题排序。感谢您的建议!
  • 那么,您的问题是 Apache 上的 require local 指令?
  • 不,一直是操作系统设置。对于 Windows 10,无论您的防火墙设置和其他设置如何,您都可以使用 Win 10 网络控制面板“高级设置”使您的设备不可见。在那里,您可以选择是否打开或关闭设置“使您的设备可被此网络上的其他设备发现”
  • 好的,我明白了。编辑您的答案(在此评论下方),更像是打开网络控制面板/高级设置/使这台 PC 可被发现(取消选中)并将其标记为正确答案;-)
猜你喜欢
  • 2016-03-30
  • 2015-11-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-07
  • 2021-10-09
  • 2018-08-04
相关资源
最近更新 更多