nginx配置文件和hosts文件的先后关系

WBOY
Freigeben: 2016-06-23 13:35:22
Original
2304 Leute haben es durchsucht

我想问一下windows中hosts中的映射项和nginx中配置的server的host的关系是什么?当使用浏览器进行访问时,域名是否先在hosts文件中进行查找,然后通过ip地址去访问资源,那nginx是不是不会对该请求进行匹配(因为是ip地址)?


回复讨论(解决方案)

nginx中的server_name 也会走一遍 hosts,看是否对应,hosts就相当于一个小型的域名服务器。应该是这样

你在浏览器中 输入一个网址  会先check一下你本地的hosts 文件  如果有做映射的话 就直接通过映射的ip访问你的 web服务器(这边是nginx) 当这个请求被nginx 获得后  他会check一下请求的域名和servername是否匹配,匹配到的话 就根据相应的配置返回内容, 没有匹配到的话 就根据默认的配置返回内容。  

我想问一下windows中hosts中的映射项和nginx中配置的server的host的关系是什么?当使用浏览器进行访问时,域名是否先在hosts文件中进行查找,然后通过ip地址去访问资源,那nginx是不是不会对该请求进行匹配(因为是ip地址)?




是通过ip访问资源的,但是nginx会找到请求头里面的hostname,来匹配需要那个配置文件来处理该响应
GET /rabbit/tracking-ad/main.js.map HTTP/1.1Host: csdnimg.cn //注意这个,nginx会根据这个匹配servernameConnection: keep-aliveCache-Control: max-age=0User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36Accept: */*Referer: http://bbs.csdn.net/forums/PHPAccept-Encoding: gzip, deflate, sdchAccept-Language: zh-CN,zh;q=0.8
Nach dem Login kopieren

如果请求头里面没有  host     ,nginx也会根据顺序查找到处理该请求的配置,一般默认的80端口都是开启的,会匹配到默认的配置里面

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage