我已经在一台小型 ubuntu 上网本上使用 xampp 进行本地开发大约 7 个月了。两周前,我得到了一台计算机,我想将其用作服务器。我已经安装了最新的 Ubuntu 发行版和 xampp,将所有文件移过来,并转发端口 80。我还从 dyndns.com 获得了一个域名,该域名正在由我的路由器(Netgear WGR6154 v8)中运行的客户端进行更新。

现在,当我尝试输入从 dyndns.com 获得的地址来访问我的服务器时,浏览器会加载直到超时。我可以使用 localhost 作为地址在本地访问所有内容,因此我相信 xampp 正在运行,只是无法连接互联网。

为了能够通过互联网查看我的文件,下一步我应该做什么?

提前感谢大家...

[我开始悬赏第一个帮助我成功在线获取文件的人]

有帮助吗?

解决方案

这里有很多问题,这是一个问题。每个问题本身都很复杂。以下是我的建议,可以帮助您确定。

首先验证您是否可以从服务器上网。这将确认您有一个可用的以太网接口。

步骤 1 确保可以从家庭网络查看 XAMPP 和您的文件。我假设您的网络使用类似 192.168.1.X 的地址,也许您的服务器是 192.168.1.10

转到您家中的另一台计算机并输入 http://192.168.1.10/ 并查看是否可以看到您的文件。如果可以,那么您就知道服务器已正确配置并且 XAMPP 正在工作。

然后向您的主机文件添加一个条目,以将 yourdnsrecord.com(或您的 dyndns 记录)解析为您的私有 IP 地址。然后,当您从该计算机的浏览器中输入 yourdnsrecord.com 时,您应该仍然可以获得您的文件。这将排除您的服务器配置不当以侦听该域名的情况。

接下来需要测试一下防火墙是否有问题。为了简化这一点,首先将您的家庭路由器从等式中删除。相反,请将新服务器直接连接到互联网连接上。(假设你可以)。这样,您就不需要正确配置 NAT 或防火墙。您的 dyndns 名称应映射到公共 IP,然后您的服务器应具有该 IP 并直接连接到 Internet。如果您直接连接服务器,并且根提示符下的 ifconfig 命令返回动态 dns 记录指向的相同公共 IP 地址,那么它应该可以工作。

如果您有 iPhone 或其他方式来测试从互联网上看到您的网络的方式,这将使您的生活变得更轻松。

如果 ifconfig 显示的公共 IP 与 dyndns 帐户中的 IP 记录不同,则说明您的动态 dns 更新脚本已损坏。手动设置IP,看看是否有效。

这很可能行不通。一些 ISP 防火墙端口 80 阻止其订阅者托管服务器。一旦您的服务器直接连接到互联网,您就可以使用公共 IP 地址进行测试(即使您的 DNS 不工作)。以 root 身份在命令提示符下键入 ifconfig 以获取您的公共 IP 地址。然后输入命令 tcpdump -i eth?在 root 提示符下访问端口 80。以太坊?需要与您通过 ifconfig 命令看到的具有公共 IP 地址的接口相同。通常是 eth0,但也可能是wire0 或类似的东西。

此命令将显示通过端口 80 到达服务器的所有流量。

从 iPhone(或您拥有的任何第二个互联网连接)浏览到通过 ifconfig 命令获得的 IP 地址。如果您在服务器上看到某些内容(并且它直接连接到您的 ISP),那么您的 ISP 并未对您设置防火墙。

如果您可以通过 IP 地址或 DynDNS 地址直接连接到互联网,那么您的 ISP 就可以访问您的服务器,并且是时候调试您的防火墙了。

要配置 NAT,您的防火墙需要做两件事:路由器从 ISP 获取的公共地址将转换为您的专用网络,以及允许该流量的防火墙规则。如果您走到这一步,那么您就知道您的防火墙出了问题,那么只需正确配置其配置即可。这里有很多家用路由器需要记录,但您通常可以从制造商网站找到路由器执行此任务的操作说明(通常是手册的一部分)

如果您严格遵循这些说明,您将使您的系统正常运行。对这个过程提出评论,我很乐意修改它以使其更加清晰。

HTH, -英尺

其他提示

您应该确保您的xampp没有只侦听localhost。

这样做可以编辑您的apache配置文件并检查并搜索收听指令

你也应该通过分析 netstat -a 的输出来了解。

之后确保您的路由器正常转发,使用 tcpdump 会有所帮助。

如果您需要更多帮助,请给我发表评论。

干杯

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top