【问题标题】:IP address is shown in address bar instead of domainIP 地址显示在地址栏中,而不是域
【发布时间】:2013-05-21 23:34:50
【问题描述】:

我有一个 WAMP 家庭网络服务器并在静态 IP 上运行,并使用 Namecheap 注册了一个域,但我对 DNS 有点不稳定。起初我使用 URL 重定向并将其指向我的 IP。这意味着当您输入域(例如 example.com)时,它只会将您重定向到我的 IP,在地址栏中用它替换域名。现在我正在尝试在地址栏中显示域而不是 IP,我正在努力理解如何做到这一点。

我尝试过的最新尝试是很多人说要做的,而不是使用 URL 重定向来使用 A(地址)记录类型并将其指向我的 IP,我认为这最终会解决我的问题。当然,大约 15 分钟后,当它全部更新时,我在 Firefox 中收到 400 Bad Request 和 nginx 下的 nginx,在 Chrome 中收到空白页面。现在我都得到了空白页。我在这里做错了吗?我是否需要在 Web 服务器上编辑一些内容,例如 httpd.conf?我这样做完全错了吗?

【问题讨论】:

标签: apache dns wamp wampserver


【解决方案1】:

是的,您应该取消重定向,而是创建一个“A 记录”。子域条目通常是但不限于“www”。记录类型“A”和目的地/目标将是您的外部 IP 地址。更新此记录后,可能需要几个小时才能注意到它生效,输入您的 URL 的人将被定向到您的网络服务器。

您需要将路由器上的 80 端口转发到托管 WAMP 的服务器。

最后,应向 WAMP 服务器提供您的域名,以便它知道要加载哪个站点。如果使用 VirtualHost 文件,这将允许您在 Web 服务器上托管多个域。为此...

取消注释以下行,使其在您的 Apache httpd.conf 中如下所示,以允许 Apache 使用虚拟主机

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

然后找到httpd-vhosts.conf文件,应该在你的WAMP安装位置找到,比如C:\wamp\bin\apache\apache*version_number*\conf\extra\

为您的网站添加一个条目,将详细信息更改为您自己的域名和网站位置。

<VirtualHost *:80>
ServerName www.stackoverflow.com
ServerAlias stackoverflow.com
DocumentRoot "C:/websites/stackoverflow/"
ErrorLog "C:/websites/stackoverflow/logs/error.log"
CustomLog "C:/websites/stackoverflow/logs/access.log" common
</VirtualHost>

现在重新启动您的 WAMP 服务器并试一试。

提示:如果您的服务器在这些更改后无法启动,请检查您是否已为日志文件创建文件夹结构!

【讨论】:

  • 我也在我的域名注册的 Namecheap 上发布了这个,他们的响应与你的相似(除了编辑我的 hosts 文件),并且在大多数情况下它都有效。不幸的是,当 mydomain.net 工作时,www.mydomain.net 给出了一个空白页。为我的外部 IP 创建了 mydomain.net 和 www.mydomain.net 的记录。 link 是我的主机文件,link 是我的 VH 设置。
  • 你不应该真的需要编辑你的 HOSTS 文件,这只会影响你的本地电脑,而不是外部用户。如果您只在本地想要这个,那么甚至不需要购买域名!如果您希望它对外界可见,请不要触摸主机文件,而是创建 DNS A 记录...然后 DNS 将解析到正确的位置。然后在您的路由器上打开端口 80(端口转发)以确保访问者被定向到网络服务器本身。如果您只想在本地执行此操作,您可以在您的 HOSTS 文件中为 WWW 添加一个附加行。 ps vhosts 文件看起来不错:)
  • 我在 vhost 上看到的许多文章都是针对本地设置而不是域的,所以这可能导致了这种混乱,感谢您清理它。使用 mydomain.net 和 www.mydomain.net 的 DNS A 记录指向我的 IP 和虚拟主机设置,我遇到了 mydomain.net 工作正常和 www.mydomain.net 出现空白页的问题。知道为什么会这样吗?我真的很难过。现在我只是将 www.mydomain.net 重定向到 mydomain.net,但我不想这样做。
【解决方案2】:

Solution described here 可以解决这个问题。

大多数免费的动态 dns 提供商都允许获取多个免费主机名。如果允许,您可以通过获取第二个名称来解决问题,例如 mysite2.somefree.org。 现在,通过以下方式在免费提供商的仪表板中配置您的免费域名(假设您的IP是188.165.15.29并且您的服务器正在监听端口8085)。

  • 将 mysite1.somefree.org 重定向到 mysite2.somefree.org:8085
  • 将 mysite2.somefree.org 重定向到您的动态 IP,例如 188.165.15.29

当您单独使用 Apache httpd 服务器而不是 WAMP 的一部分时,这也有效。您不需要调整虚拟主机或服务器的任何部分。您只配置入站方向。

【讨论】:

    【解决方案3】:

    使用 Forward 屏蔽您注册域的位置。我的是GoDaddy。 在转发设置中,您将在页面底部看到此内容。单击带有掩码的转发并添加您希望他们在访问您的站点时在浏览器的地址栏中看到的标题。而不是显示您的 IP 地址

    【讨论】:

      猜你喜欢
      • 2017-01-03
      • 2020-08-16
      • 1970-01-01
      • 2018-09-10
      • 1970-01-01
      • 2015-09-11
      • 1970-01-01
      • 1970-01-01
      • 2016-11-11
      相关资源
      最近更新 更多