• 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目錄之下)。


     ./configure --add-module=/path/to/module/source

    Nginx wiki 列出一些大家很喜歡用的第三方模塊。在這些模塊中,讓我們選擇這個重寫網頁并使用公共資源以減少延遲和帶寬的模塊。

    Ngx_pagespeed: 


    這個模塊是 Google 在 PageSpeed 項目里開發的。 目的很明顯就是為了利用Nginx的通信優化模式,提高頁面加載時間。

    請根據 安裝 ngx_pagespeed 的教程來安裝這個模塊。該模塊也是您服務器必須安裝的模塊之一。

    Nginx-rtmp-module:


    實時流,錄制, 在線轉碼, 高級緩存技術。 該模塊很容易就能幫到您。

    Nginx-push-stream-module


    Nginx 里的HTTP 流推送模塊。 支持事件源長文件的輪流檢測。查看例子: WebSocket.

    其它的提要:

    在使用 Nginx, 下面的這些工具也非常有幫助:

    1. ngxtop: ngxtop 能夠解析 nginx 的訪問日志并且輸出nginx 服務器的頂級指表。
    2. Ngx_openresty: 將 nginx 轉變成為全功能的網絡應用服務器。
    3. Server configs:  是nginx 配置文件小段的倉庫。 在你開始配置服務器并且想要設置的正確時,該倉庫就發揮了重要的作用。他能幫助你提高網站的性能以及安全性,還能協助你分配資源使用。
    4. Lua-nginx-module: 把Lua 內嵌入 Nginx中去。
    5. H5ai:   值得探索, 一個 HTTP網站服務器索引模塊,包括了 Apache Httpd, lighttpd, nginx 以及 Cherokee.
    6. Nginx 資源大全
    7. 如何寫一個 nginx 模塊。


    不深思則不能造于道。不深思而得者,其得易失。

    名人名言- 曾國藩
    • By 優聯實達
    • 2015-11-08
    • 1963
    • 公司新聞,網站開發,網站設計,UI
  • 少妇高潮久久久久7777