Nginx模塊介紹
對於Nginx來說,可能每個人都並不默認。多多少少都使用過,或者說是聽說過。Nginx憑藉其高併發、低消耗、熱部署等特點,逐漸成為WEB服務器軟件的首選。可以算作為Apache之後的新貴。
Nginx一般常被用作:基於http或者https協議的web服務器軟件,反向代理軟件,負載均衡軟件等等。這都有賴於它本身提供的一些模塊的機制。所以,整個Nginx就是一個模塊化的軟件。需要什麼功能,就調用其對應的模塊,並配置其語法即可。
當然了,在某些情況下,一些業務需求。在官方模塊中沒有實現,也可以通過擴展第三方模塊的方式來實現它們。Nginx在這方面,可謂方便至極。
接下來,就一起來了解一下常用的官方模塊和第三方模塊。
Nginx官方模塊
1、官方模塊的概述
打開官方文檔中,可以看到Nginx的語法和模塊被分為四塊。
第一塊
第二塊 http這一部分的模塊,都是基於http的功能和操作
第三塊 郵箱代理模塊
第四塊 stream模塊 基於tcp協議的一些模塊
根據實際實現需求,查找對應的模塊及其語法。方便快速實現功能。
一般常見於使用http相關的模塊。
常見使用的官方模塊
2.1、ngx_http_core_module
提供http協議的支持。平常配置的http段、server虛擬主機段、location段等。都是此模塊的中的一些配置語法。
2.2、ngx_http_gzip_module
使用‘gzip’方法壓縮,有助於將傳輸數據的大小減少為一半甚至更多。提供請求返回速度。
2.3、ngx_http_proxy_module
該模塊允許將請求轉發到其他服務器,實現代理服務器的功能。
常見於實現反向代理服務器。
2.4、ngx_http_rewrite_module
該模塊用於使用pcre正則表達式更改請求的URI,返回重定向,或者判斷選擇對應的配置項。
2.5、ngx_http_upstream_module
該模塊用戶分發到不同的服務器節點。支持由proxy_pass, fastcgi_pass, uwsgi_pass, scgi_pass, memcached_pass, grpc_pass等的服務器組。
Nginx第三方模塊
在某些特定業務場景下,官方模塊沒有實現的功能,或者不滿足使用需求。就可以藉助一些開發者發佈的第三方模塊,擴展Nginx的功能,使其更為強大。滿足業務需求。
官方社區的第三方模塊列表:常見的第三方模塊,但不僅限於這些
ngx-fancyindex介紹
基於默認官方模塊autoindex,實現更加可定製化的功能。比如說,用戶自定義頭部和尾部、用戶自己定義的css樣式、允許通過名稱、修改時間、大小對於元素進行排序(升序或者降序)。
使用默然官方index:
使用模塊美化後:
2、編譯安裝第三方模塊
實現操作步驟:
①重新編譯安裝加載第三方模塊
記得先解壓第三方軟件模塊
shell > tar zxvf ngx-fancyindex-v0.4.2.tar.gz
shell > cd /root/soft/nginx-1.14.0
shell > ./configure --prefix=/usr/local/nginx --with-http_ssl_module --add-module=/root/soft/ngx-fancyindex-0.4.2/
shell > make && make install
安裝完成之後
3、配置實現
②配置實現
③測試查看效果
測試配置文件,進行重載配置[如果是新編譯的軟件,就需要重啟,因為舊的版本里沒有加入新的第三方模塊]。如果模塊安裝完成,配置成功,就可以看到之前圖片的效果了
Tip:關於頁腳footer的配置
頁腳內容,可以根據需求進行編寫,在配置文件root綁定的網站目錄
上傳一個二維碼圖片
最後顯示效果
資源福利:
閱讀更多 黑馬程序員 的文章