Nginx WEB服務(wù)器最主要就是各種模塊的工作,模塊從結(jié)構(gòu)上分為核心模塊、基礎(chǔ)模塊和第三方模塊,其中三類模塊分別如下:
核心模塊:HTTP模塊、EVENT模塊和MAIL模塊等;
基礎(chǔ)模塊:HTTP Access模塊、HTTP FastCGI模塊、HTTP Proxy模塊和HTTP Rewrite模塊;
第三方模塊:HTTP Upstream Request Hash模塊、Notice模塊和HTTP Access Key模塊、Limit_req模塊、Upstream check module等;
Nginx的模塊從功能上分為如下三類。
Handlers(處理器模塊):此類模塊直接處理請(qǐng)求,并進(jìn)行輸出內(nèi)容和修改headers信息等操作,Handlers處理器模塊一般只能有一個(gè);
Filters (過濾器模塊):此類模塊主要對(duì)其他處理器模塊輸出的內(nèi)容進(jìn)行修改操作,最后由Nginx輸出;
Proxies (代理類模塊):此類模塊是Nginx的HTTP Upstream之類的模塊,這些模塊主要與后端一些服務(wù)比如FastCGI等進(jìn)行交互,實(shí)現(xiàn)服務(wù)代理和負(fù)載均衡等功能。
Nginx由Nginx內(nèi)核和模塊組成,其中內(nèi)核的設(shè)計(jì)非常微小和簡(jiǎn)潔,完成的工作也非常簡(jiǎn)單,僅僅通過查找配置文件將客戶端的請(qǐng)求映射到一個(gè)location block,而location是Nginx配置中的一個(gè)指令,用于訪問的URL匹配,而在這個(gè)location中所配置的每個(gè)指令將會(huì)啟動(dòng)不同的模塊去完成相應(yīng)的工作。
1、安裝nginx
yum install pcre-devel pcre -y
cd /usr/src
wget -c http://nginx.org/download/nginx-1.12.0.tar.gz
tar -xzf nginx-1.12.0.tar.gz
#進(jìn)入解壓目錄,然后sed修改Nginx版本信息為JWS
cd nginx-1.12.0 ;
sed -i -e ‘s/1.12.0//g’ -e ‘s/nginx//JWS/g’ -e ‘s/”NGINX”/”JWS”/g’ src/core/nginx.h
#預(yù)編譯Nginx
useradd www
./configure –user=www –group=www –prefix=/usr/local/nginx –with-http_stub_status_module –with-http_ssl_module
make && make install
#檢查nginx配置文件是否正確,然后啟動(dòng)nginx
/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx
2、升級(jí)nginx
wget http://www.nginx.org/download/nginx-1.14.0.tar.gz
tar -xvf nginx-1.14.0.tar.gz
cd nginx-1.14.0
./configure –prefix=/usr/local/nginx –user=www –group=www –with-http_stub_status_module –with-http_ssl_module
make
#備份舊版本的nginx可執(zhí)行文件,復(fù)制新版本的nginx這行文件
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old
cp nginx-1.14.0/objs/nginx /usr/local/nginx/sbin/
#測(cè)試新版本nginx是否正常
/usr/local/nginx/sbin/nginx -t
#平滑重啟nginx
kill -QUIT `cat /usr/local/nginx/log/nginx.oldbin`
#驗(yàn)證nginx是否升級(jí)成功
/usr/local/nginx/sbin/nginx -V顯示最新編譯的版本信息即可。
下面關(guān)于Nginx的文章您也可能喜歡,不妨參考下:
CentOS 7下Nginx服務(wù)器的安裝配置 http://www.sfodin.cn/Linux/2017-04/142986.htm
CentOS上安裝Nginx服務(wù)器實(shí)現(xiàn)虛擬主機(jī)和域名重定向 http://www.sfodin.cn/Linux/2017-04/142642.htm
CentOS 6.8 安裝LNMP環(huán)境(Linux+Nginx+MySQL+PHP) http://www.sfodin.cn/Linux/2017-04/142880.htm
Linux下安裝PHP環(huán)境并配置Nginx支持php-fpm模塊 http://www.sfodin.cn/Linux/2017-05/144333.htm
Nginx服務(wù)的SSL認(rèn)證和htpasswd認(rèn)證 http://www.sfodin.cn/Linux/2017-04/142478.htm
Ubuntu 16.04上啟用加密安全的Nginx Web服務(wù)器 http://www.sfodin.cn/Linux/2017-07/145522.htm
Linux中安裝配置Nginx及參數(shù)詳解 http://www.sfodin.cn/Linux/2017-05/143853.htm
Nginx日志過濾 使用ngx_log_if不記錄特定日志 http://www.sfodin.cn/Linux/2014-07/104686.htm
CentOS 7.2下Nginx+PHP+MySQL+Memcache緩存服務(wù)器安裝配置 http://www.sfodin.cn/Linux/2017-03/142168.htm
使用Nginx+Docker配置HTTPS負(fù)載均衡 http://www.sfodin.cn/Linux/2018-06/152855.htm