Domain-Name-System

設置伺服器在不同子域的內部網路中可見

  • September 28, 2019

我在本地網路中有一台 Ubuntu 的伺服器,我在其中執行了兩台伺服器。我可以像這樣從網路中的另一台電腦訪問伺服器:http://serverpc.local:8081 和 http://serverpc.local:443

我想設置 server-pc 以便我可以訪問執行在 server-pc 上的兩台伺服器,如下所示:http://site1.serverpc.local 和 http://site2.serverpc.local。注意 serverpc 是伺服器機器的主機名。

經過一番研究,我發現我應該在伺服器機器上設置一個 DNS 伺服器,然後使用 virtualhost 和 apache 以某種方式將 http://site1.serverpc.local 反向代理到 http://serverpc.local:8081。請記住,我想從 LAN 中的另一台電腦訪問伺服器。

不要為反向代理而煩惱……只需<VirtualHost>在 Apache 中設置兩個實例。您可以在 Ubunutu 伺服器上使用簡單的 DNS 伺服器,例如 dnsmasq。編輯 /etc/hosts 文件以包含兩個條目(假設 serverpc 為 169.254.10.10):

169.254.10.10 serverpc.local site1.serverpc.local site2.serverpc.local

然後在 Apache 中定義兩個 VirtualHost,如下所示:

<VirtualHost *:80>
ServerName site1.serverpc.local
DocumentRoot "/some/path1"
</VirtualHost>
<VirtualHost *:80>
ServerName site2.serverpc.local
DocumentRoot "/some/path2"
</VirtualHost>

這是一個非常高級的概述,但它可以幫助您入門。

引用自:https://serverfault.com/questions/852500