《深入理解Nginx:模塊開發與架構解析》讀書筆記


1.nginx的特點:快、擴展性強、可靠性強、內存低消耗、支持高並發、熱部署、開源免費

2.nginx由master進程來管理多個(CPU數)worker進程

3.配置按功能分,有4類:

  1)用於調試、定位問題的配置項

  2)正常運行必備的配置項

  3)優化性能的配置項

  4)事件類配置項

4.web服務器配置

  4.1虛擬主機與請求的分發:

  1)listen:監聽端口【server】

  2)server_name:請求中的主機域名【server】

  3)server_names_has_buket_size:每個散列桶的內存大小【server、http、location】

  4)server_names_has_max_size:分配的內存大小,內存越大沖突越小,檢索越快【server、http、location】

  5)server_names_in_redirect:決定是否使用是server_name配置的主機名代替host中的頭部【server、http、location】

  6)location:匹配uri,如果匹配,用后面的配置來處理請求【server】

  4.2文件路徑的定義:

  1)root:定義資源文件目錄的相對於請求的路徑【server、http、location、if】

  2)alias:定義資源文件目錄的相對於請求的路徑的別名【location】

  3)index:首頁文件【server、http、location】

  4)error_page:錯誤碼重定向頁面【server、http、location、if】

  5)recursive_error_page:是否允許遞歸定義錯誤頁面【server、http、location】

  6)try_files:嘗試訪問uri,如果都不存在則重定向到最后設置的路徑【server、location】

  4.3內容及磁盤資源的分配:請求占用內存、磁盤的相關設置

  4.4網絡連接的設置:連接、超時、關閉

  4.5MIME類型設置:類型type與文件后綴的映射

  4.6對客戶端請求限制:請求方法、包體最大值、限速

  4.7文件操作優化:IO、緩存

  4.8對客戶端請求的特殊處理:HEAD合法性、URI檢查、DNS

  4.9ngx_http_core_module模塊提供的變量:

5.負載均衡的配置

  5.1.upstream:上游服務器集群【http】  

  5.2.server:上游服務器名字【upstream】

  5.3.ip_hash:根據IP轉發的策略

  5.4.記錄日志時支持的變量

6.反向代理的配置

  6.1.proxy_pass:反向代理的上行地址。如果轉發要帶上host頭部,需要加上配置:proxy_set_header  Host $host;

  6.2.proxy_method:轉發時的方法

  6.3.proxy_hide_header:轉發時過濾掉某些字段

  6.4.proxy_pass_header:與上面配置相反

  6.5.proxy_pass_request_body:是否轉發body

  6.6.proxy_pass_request_headers:是否轉發header

  6.7.proxy_redirect:重定向相關設置

  6.8.proxy_next_upstream:發生錯誤時,配置另一台服務器處理請求

 

后面是nginx的高級部分,介紹了如何開發一個nginx模塊和了解nginx的實現原理,如果有機會的話,再繼續學習:https://www.amazon.cn/dp/B01CHUPLE0/ref=sr_1_1?s=digital-text&ie=UTF8&qid=1536817830&sr=1-1&keywords=nginx

 

 

附錄

常用命令:

1.校驗配置文件: nginx -t

2.啟動服務 nginx

3.停止服務:nginx -s quit|stop

4.重啟服務:nginx -s reload

5.(日志移走后)重新寫入新日志:nginx -s reopen

6.顯示命令幫助:nginx -h

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM