访问本地网站没有DNS?

我有一个nginx负载均衡器设置2个网站。 负载均衡器的IP地址是192.168.123.10我想在本地访问这两个站点来检查是否一切正常。 但是我对主机名和域名感到困惑。 我给了第一个站点的主机名:“testing”和一个域名“mytest.local”。 我在手册中读到,如果我想访问站点,我应该去test.mytest.local,并使该地址的DNS指向负载均衡器的IP。

但我不明白我的电脑怎么知道我想要哪个站点,因为如果我负载平衡的其他站点是anothertest.mytest.local,并且它parsing为相同的IP,这将如何不同呢?

我没有设置任何DNS,我只是想检查Nginx是否工作,所以我仍然可以访问本地的网站test.mytest.local? (没有build立一个DNS)?

是的,你可以这样编辑/etc/hosts

 192.168.0.10 example.com.local 

该文件是在您尝试parsing任何主机名时首先检查的地方,然后继续并使用DNS服务器。 我这样说,所以你知道,例如,如果你添加1.2.3.4 google.com/etc/hosts ,你将无法得到真正的google.com

“NGINX服务器块”似乎是你在找什么。

Web客户端(例如Firefox或Chrome)将预期的URL发送到Web服务器,因此Web服务器可以根据Web浏览器用于访问的“名称”在相同的IP上提供不同的站点。

从这个NGINX页面看一下这个示例configuration,这是不言而喻的:

 http { index index.html; server { server_name www.domain1.com; access_log logs/domain1.access.log main; root /var/www/domain1.com/htdocs; } server { server_name www.domain2.com; access_log logs/domain2.access.log main; root /var/www/domain2.com/htdocs; } }