【发布时间】:2013-03-16 05:42:52
【问题描述】:
我有一个小问题。我正在使用 PHP 中的网站在 Host Gator 上调用我的主机站点上的网页。问题是 URL 指向我自己的 IP 地址,并且端口转发到我 LAN 上的特定 PC。除非是我尝试访问该网页,否则它可以完美运行。我必须使用本地 IP 地址来访问其他人可以看到的相同结果。在我的网络中我无能为力,我正在使用带有静态 IP 的 Comcast Business,当使用我的 WAN IP 地址时,它根本不会离开 LAN 并反射回 WAN IP。 所以我想了几个解决方案:
一种是使用javascript或其他东西来检测请求的IP地址,如果地址是我的,它会将URL更改为我的本地IP。那我不知道该怎么办。 第二种选择是在托管网站上使用 PHP 来收集结果:
$homepage = file_get_contents('http://MYWANURL);
echo $homepage;
MYWANURL 可以从 Internet 访问的我的 URL。问题是此代码返回为空。我从来没有遇到过使用 file_get_contents 从我的托管公司获取其他网站的问题。 如果我在局域网中使用相同的代码,在本地 php 服务器上使用我的局域网地址,我正在寻找的输出完美。
所以我的问题是,有没有一种方法可以在我的托管公司上通过 javascript 或 PHP 使用,以便我可以看到与局域网外的人相同的结果?
【问题讨论】:
-
$_SERVER['SERVER_ADDR'];这给出了基于你可以重定向的请求 IP 地址
-
既然是网络问题,我宁愿修网络也不要修代码
-
您可以编辑您的主机文件以进行此更改吗?
-
您是仅在一台特定机器上遇到此问题,还是您局域网中的所有主机也遇到此问题?
-
这是一个无法修复的局域网问题,无需对硬件进行重大更改。我使用的 Comcast Business 路由器在引用公共 WAN 地址时缺少离开 LAN 的设置。因此,基本上当我查询自己的 WAN(公共地址)时,它永远不会离开 LAN,因为它将我的 LAN 与 WAN 地址联系在一起。它跳过 IP 转发。
标签: php javascript networking routing connection