Domain-Name-System
設置伺服器在不同子域的內部網路中可見
我在本地網路中有一台 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>
這是一個非常高級的概述,但它可以幫助您入門。