濮阳杆衣贸易有限公司

主頁 > 知識庫 > nginx處理http請求實現(xiàn)過程解析

nginx處理http請求實現(xiàn)過程解析

熱門標簽:株洲電銷 貴陽網(wǎng)絡外呼系統(tǒng)軟件 南充電銷外呼系統(tǒng) 地圖標注小程序 陜西辦理400電話 信陽電銷外呼系統(tǒng)怎么樣 海外工廠地圖標注 南昌外呼系統(tǒng)定制 宿州外呼系統(tǒng)公司

nginx首先決定要用配置文件里的哪個server{}塊來處理,假設有下面的server{}配置

server {
  listen   80;
  server_name aaa;
  ...
}

server {
  listen   80;
  server_name bbb;
  ...
}

nginx會根據(jù)過來的http請求頭里的Host字段里的值,來判斷使用哪個server{}。

如果請求頭里沒有Host字段,或者Host字段里的值,和Nginx配置文件里的server{}里的{server_name}都不匹配,則使用第一個server{},來處理這個請求。

如果請求頭里的Host字段里的值和Nginx配置文件里的某個server{}里的{server_name},匹配上了,則使用這個server{},來處理這個請求。

可以使用curl工具來方便的做實驗,curl可以設置http請求的請求頭,所以可以任意設置Host字段,用【-H】來設置。下面的10.210.65.73是安裝了nginx的機器的IP地址。

所以用下面的命令,發(fā)送了http請求后,nginx就會使用server{server_name aaa}來處理這個請求。

curl.exe -H "Host: aaa" 10.210.65.73

非常重要的結論:server_name對應的是http請求頭里的Host字段的值,有了上面的理論支撐,就可以很容易的設置反向代理和負載均衡:

當過來的http請求頭里的Host字段為aaa時,storage.test來處理。

當過來的http請求頭里的Host字段為bbb時,tracker.test來處理。

  #負載均衡配置,IP為129的機器配置高,所以給他的數(shù)字的27,就是讓它多處理
  upstream storage.test {
   server 10.210.65.129:80 weight=27;
   server 10.210.65.130:80 weight=1;
  }

  #負載均衡配置
  upstream tracker.test {
   server 10.210.65.52:80 weight=7;
   server 10.210.65.53:80 weight=2;
  }

  #文件的存儲
  server {
    listen    80;
    server_name aaa;
    location / {
      #http:://后面的內容是自己定義,對應上面upstream的名字
      proxy_pass http://storage.test;
    }
  }

  #文件服務器tracker
  server {
    listen    80;
    server_name bbb;

    location / {
      #http:://后面的內容是自己定義的,對應上面upstream的名字
      proxy_pass http://tracker.test;
    }

  }

server{}里的listen監(jiān)聽的是誰的端口?

監(jiān)聽的是:發(fā)送過來http請求的進程(大部分是瀏覽器)的端口(如果是http請求,則為端口為80),不是nginx服務器自己進程的端口。

nginx根據(jù)http請求頭的Host字段里的值,和發(fā)送過來http請求的進程(大部分是瀏覽器)的端口,來決定使用哪個server{}來處理http請求。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:開封 鄭州 晉城 石嘴山 拉薩 汕頭 三明 玉林

巨人網(wǎng)絡通訊聲明:本文標題《nginx處理http請求實現(xiàn)過程解析》,本文關鍵詞  nginx,處理,http,請求,實現(xiàn),;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《nginx處理http請求實現(xiàn)過程解析》相關的同類信息!
  • 本頁收集關于nginx處理http請求實現(xiàn)過程解析的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    鲜城| 兰考县| 涞水县| 紫云| 罗平县| 监利县| 塔河县| 望奎县| 哈尔滨市| 克拉玛依市| 宝清县| 高清| 兴安盟| 阜新| 湖南省| 揭西县| 加查县| 绥江县| 石景山区| 婺源县| 万州区| 绥阳县| 盐山县| 宣城市| 屏边| 枣强县| 同德县| 拉孜县| 庄浪县| 顺平县| 隆尧县| 肃南| 绥滨县| 溧阳市| 搜索| 泸西县| 长丰县| 建瓯市| 成武县| 华宁县| 普兰店市|