Nginx 指導:概要
上一篇主要了解了 Nginx的結構以及配置文件。本篇從這里繼續,了解 nginx 的概要: 架構所需要的模塊以及高級配置技巧。
Nginx模塊
Nginx 最厲害的是他的模塊。整個的架構可以被想象成由各種各樣的模塊建成,或者可以想象成基于 nginx的核心在上面所建立的各種功能。要使用他們,最好能從源代碼級別編譯他們,并設置他們為可運行。
有些模塊如果沒有特別的定義,他們會自動編譯的。 對于這些模塊,我們找些有趣的模塊研究一下,看看他們是如何被廣泛應用的。
受限制的訪問:
訪問:(ngx_http_access_module): 該模塊可以對指定的 IP地址進行限制訪問。
location / {
deny 192.168.1.1;
allow 192.168.1.0/24;
allow 10.1.1.0/16;
allow 2001:0db8::/32;
deny all;
}
HTTP 授權:(ngx_http_auth_basic_module): 允許通過HTTP基本的用戶名密碼授權訪問:
location / {
auth_basic "password";
auth_basic_user_file conf/htpasswd;
}
子請求授權:(ngx_http_auth_request_module): 根據子請求的結果執行客戶端的授權。
限制鏈接:(ngx_http_auth_request_module):允許您定義從某一個 IP 地址上可以發起的最大并發鏈接數。
限制請求:(ngx_http_limit_req_module): 限制從單個 IP地址上發起的請求數量。
大多數在 Nginx 編譯過程中就能被激活的模塊就更在這里了。同時我也來介紹一些第三方模塊,對您實際的使用將更有幫助。
第三方模塊:
在使用這些模塊時,首行得下載他們,并放到指定的Nginx目錄下進行編譯,就如同下面的代碼所示:(我們假定您正工作在 nginx source目錄之下)。
Nginx wiki 列出一些大家很喜歡用的第三方模塊。在這些模塊中,讓我們選擇這個重寫網頁并使用公共資源以減少延遲和帶寬的模塊。
Ngx_pagespeed:
這個模塊是 Google 在 PageSpeed 項目里開發的。 目的很明顯就是為了利用Nginx的通信優化模式,提高頁面加載時間。
請根據 安裝 ngx_pagespeed 的教程來安裝這個模塊。該模塊也是您服務器必須安裝的模塊之一。
Nginx-rtmp-module:
實時流,錄制, 在線轉碼, 高級緩存技術。 該模塊很容易就能幫到您。
Nginx-push-stream-module
Nginx 里的HTTP 流推送模塊。 支持事件源長文件的輪流檢測。查看例子: WebSocket.
其它的提要:
在使用 Nginx, 下面的這些工具也非常有幫助:
- ngxtop: ngxtop 能夠解析 nginx 的訪問日志并且輸出nginx 服務器的頂級指表。
- Ngx_openresty: 將 nginx 轉變成為全功能的網絡應用服務器。
- Server configs: 是nginx 配置文件小段的倉庫。 在你開始配置服務器并且想要設置的正確時,該倉庫就發揮了重要的作用。他能幫助你提高網站的性能以及安全性,還能協助你分配資源使用。
- Lua-nginx-module: 把Lua 內嵌入 Nginx中去。
- H5ai: 值得探索, 一個 HTTP網站服務器索引模塊,包括了 Apache Httpd, lighttpd, nginx 以及 Cherokee.
- Nginx 資源大全:
- 如何寫一個 nginx 模塊。
不深思則不能造于道。不深思而得者,其得易失。
名人名言- 曾國藩
- By 優聯實達
- 2015-11-08
- 1963
- 公司新聞,網站開發,網站設計,UI