【问题标题】:Port-forwarding and website hosting: Two domains, same ip, different computer端口转发和网站托管:两个域,相同的 ip,不同的计算机
【发布时间】:2015-09-14 16:16:13
【问题描述】:

所以我有两个域: http://firstexample.com http://secondexample.com

在我的路由器上,我目前有端口转发,因此当有人转到 http://firstexample.com 时,他们会看到我的内部 IP 为 192.168.0.15 的计算机正在托管的网站

我该如何设置,以便如果有人访问http://secondexample.com,他们会看到我的另一台计算机(内部 IP 为 192.168.0.16)正在托管的网站?

我的两台电脑都有相同的公共 IP。

这是我要更改的路由器上的设置吗?或者 Godaddy 会允许我配置一些东西吗?

【问题讨论】:

    标签: http networking web dns ip


    【解决方案1】:

    不,仅使用第 3 层/第 4 层功能,不可能在同一 IP/端口配置上侦听两个域。大多数 Web 服务器都是根据请求中的 Host 字段来执行此操作的。如果您可以在路由器上使用两个端口,这是可能的,例如。你可以做一些类似端口转发的事情

    <router_ip>:80 -> 192.168.0.15:80 
    <router_ip>:8080 -> 192.168.0.16:80
    

    但问题是任何试图访问http://secondexample.com 的人都应该始终以http://secondexample.com:8080 的身份访问它,这非常不方便。

    这是您可以做的另一种选择 -

    192.168.0.15 上运行一个网络服务器,比如nginx 或其他东西,并为每个http://firstexample.comhttp://secondexample.com 创建两个后端。请参阅 nginx 文档了解如何操作。您不需要三台机器,因为 firstexample.com 可以在 192.168.0.15 上运行(除非不是在标准端口 80 上,而是在端口 8080 上),并且 secondexample.com 可以在另一台机器上运行。然后在您的路由器端口转发上仅添加以下条目

    <router_ip>:80 -> 192.168.0.15:80 # assuming ngninx is listening on port 80.
    

    我假设 firstexample.com 和 secondexample.com 都解析到您的路由器 IP 地址。

    【讨论】:

      猜你喜欢
      • 2018-09-23
      • 2016-05-21
      • 1970-01-01
      • 1970-01-01
      • 2021-08-05
      • 1970-01-01
      • 1970-01-01
      • 2012-09-30
      • 1970-01-01
      相关资源
      最近更新 更多