从连接到我的开发机器的家庭路由器创建一个域

从连接到我的开发机器的家庭路由器创建一个域

我对处理网络问题的任何事物都很陌生。我有一个问题,我一直在研究,但找不到直接的答案。基本上,我的问题如下

1) 我正在家用机器上的本地 MAMP 服务器开发一些 Web 应用程序。2
) 我通过无线 CISCO Linksys E2500 路由器以及我所有的其他设备连接到互联网

3) 我希望这样我就可以连接到我的开发机器而不使用其分配的 IP 地址。我想为它创建一个域,最好只是 localhost,这样当我通过我的 iphone 连接时,我就可以看到开发进度,而不必不断地将更改推送到我的服务器。

我不想通过 IP 连接的原因是,由于我加载的所有 CSS、Javascript、图像文件都遵循 localhost/developmentFolder/ 目录,因此页面无法正确呈现,从而导致页面加载不正确

我正在开发一些将有移动版本的 Web 应用程序,并希望在移动浏览器中测试它。请告诉我是否有办法让我本地网络中的任何设备通过该特定域名连接到我的机器。

我如何才能不花任何钱就做这样的事呢?任何帮助都将不胜感激。

答案1

如果你希望在局域网上实现全网络、独立于操作系统的命名,那么你应该考虑设置一个DNS 服务器在您的局域网上,因为您要做的事情就是它们的用途。:)

基本上,您需要:

  • 查找并安装您喜欢的 DNS 服务器。
  • 使用您选择的域名创建一个区域。
  • 在该区域中创建一个具有您想要使用的主机名的 A 记录,并将其与开发机器的 IP 关联。
  • 设置 DNS 服务器将所有未知请求转发到外部 DNS(您的路由器、ISP 的 DNS 服务器、Google 等)。
  • 在您的 LAN 设备上,在其 IP 设置中输入新的 DNS 服务器作为其 DNS 服务器。
  • 利润。

您应该避免尝试使用“Localhost”作为主机名,因为它(通常)保留用于本地环回(127.0.0.1)。

请记住,这只是为了处理您要求的事情——能够通过名称访问 LAN 上的设备。它不考虑来自互联网的人。:)

答案2

目前为止最简单的方法是将路由器上的 TCP 80 端口转发到 LAMP 盒。请记住,现在全世界都可以看到您的 Web 服务器,因此不应忽视安全性。“localhost”是保留名称,因此您不能使用它。从获取免费子域名无IP害怕的或任何其他提供该域名的人。将该子域名指向您的 IP(您可以通过以下方式找到http://whatsmyip.org) 并且 Bob 是你的叔叔。

答案3

使用转发端口 80。在外部 IP 上将您的设备连接到内部 MAMP 服务器。

如果 Apache 服务器能够使用 RewriteRule 和 RewriteCond 与访问者一起生成工作,那么您将能够将自身与他们的任何项目连接起来。

Apache mod_rewrite 技术细节

Apache .htaccess 重写规则重写条件:

Apache .htaccess 重写规则 RewriteCond

显然,你做错了。拥有一个 Web 部件很重要 - 脚本、html、css 不依赖于名称。无论你使用什么域或 IP 地址都应该无关紧要。拥有一个独立的路径也是可取的。这是当目录树可以更改或有一些虚拟树时。这对于具有不同逻辑的人非常有用,当他们使用网站上的路径进行导航时。或者与其他网站互动。或者当网站有很多想法时。

一般而言,如果网站在更改域名之后,部分路径、所有路径都正常,则说明有一定的质量。

简单明了的路径名称是导航的方法之一。

此外,这些规则使得改变使用短别名的方式成为可能。

相关内容