端口转发和网站托管:两个域,相同的ip,不同的计算机



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

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

我如何设置它,以便如果有人http://secondexample.com,他们会看到我的另一台电脑的网站,内部ip为192.168.0.16吗?

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

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

不,仅使用Layer3/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之类的Web服务器,并创建两个后端,每个后端一个http://firstexample.com和http://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地址。

相关内容

最新更新