已安裝的 Nginx,需要新增一個新模組,需要怎麼弄呢?
步驟
以模組 nginx-sticky-module-ng 為例
- 檢視 Nginx 上次編譯安裝引數
[~]$ nginx -V
nginx version: nginx/1.10.0
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC)
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-ipv6 --with-http_sub_module
命令輸出的資料中,configure arguments
項內容即上次的編譯引數,需要重複用到。
- 備份原 Nginx 執行檔案
- 下載原版本的 Nginx 原始碼包,並解壓
- 下載第三方擴充套件模組
git clone https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng.git
- 加入需要安裝的新模組,重新編譯
如果是第三方模組,則指定目錄;如果是內建模組,則指定模組名。
./configure --prefix=/你的安裝目錄 --add-module=/第三方模組目錄
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-ipv6 --with-http_sub_module --add-module=./nginx-sticky-module-ng
// make後不要執行install,改用手動拷貝
make
// 強制覆蓋執行檔案
sudo cp -rfp objs/nginx /usr/local/nginx/sbin/nginx