我有一个nginx负载均衡器设置与2个站点。负载平衡器的ip地址是192.168.123.10,我想在本地访问这两个站点,以检查是否一切正常。但我对主机名和域名有点困惑。我给了第一个网站主机名:"test“和域名"mytest.local”。我在手册中读到,如果我想访问这个站点,我应该转到test.mytest.local,并使该地址的dns指向负载平衡器的IP。
但是我不明白我的计算机怎么会知道我想要哪个站点,因为如果我的另一个站点是anothertest.mytest.local,并且它解析为同一个IP,这又有什么不同呢?
我没有设置任何dns,我只是想检查nginx是否工作,所以我还可以访问网站test.mytest.local本地吗?(不设置dns)?
发布于 2016-04-26 08:30:01
是的,你可以这样编辑/etc/hosts:
192.168.0.10 example.com.local当您试图解析任何主机名时,该文件首先检查该文件的位置,然后继续使用DNS服务器。我这么说是为了让您知道,例如,如果将1.2.3.4 google.com添加到/etc/hosts中,您将无法获得真正的google.com
发布于 2017-04-26 14:07:20
"NGINX块“似乎是您正在寻找的。
Web客户端(即Firefox或Chrome)将预期的URL发送到web服务器,因此web服务器可以根据web浏览器用于访问它的“名称”在同一个IP上提供不同的站点。
看看来自这个NGINX页面的这个示例配置,它是非常不言自明的:
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;
}
}发布于 2023-02-01 13:31:14
这样,您就可以通过同一台机器访问www.domain1.com。但在我的例子中,我想通过不同的机器访问www.domain1.com,在同一个网络中本地连接。
通过通过不同的机器访问www.domain1.com,它试图从不同设备的“/etc/host”文件中解析主机。
https://serverfault.com/questions/772922
复制相似问题