要做一個(gè)WebSocket的應(yīng)用,Nginx自V1.3.13版本開始支持WebSocket,但服務(wù)器還是1.2.5版,升級(jí)是必須的。為了盡可能小的對(duì)服務(wù)器站點(diǎn)造成影響,選擇了升級(jí)安裝Nginx。
1. 下載最新版本的Nginx
本文編寫日期Nginx的最新穩(wěn)定版是V1.8.0,使用wget
命令下載。
wget http://nginx.org/download/nginx-1.8.0.tar.gz
2. 查看原來Nginx的配置
nginx -V
Nginx安裝時(shí)配置的不同,使用以上命令的輸出也會(huì)有所區(qū)別,我的服務(wù)器命令輸出如下:
nginx version: nginx/1.2.5built by gcc 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) TLS SNI support enabledconfigure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --without-http-cache --with-http_ssl_module --with-http_gzip_static_module
3. 編譯新版本的Nginx
3.1 解壓下載文件
tar -xzvf nginx-1.8.0.tar.gz
3.2 配置編譯參數(shù)
在上面操作中configure arguments
后面就是原Nginx的編譯參數(shù),編譯前和原版本一樣進(jìn)行配置。
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --without-http-cache --with-http_ssl_module --with-http_gzip_static_module
3.3 編譯Nginx
執(zhí)行make編譯命令
make
4. 升級(jí)安裝
編譯完成后,會(huì)在當(dāng)前目錄(源代碼目錄)下的objs目錄下生成nginx的執(zhí)行文件。將新生成的執(zhí)行文件替換原文件,即可完成升級(jí)。替換前,應(yīng)該先備份舊文件。
4.1 備份舊程序
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old
4.2 復(fù)制新編譯的執(zhí)行文件到Nginx目錄
cp objs/nginx /usr/local/nginx/sbin/nginx
4.3 重啟Nginx完成升級(jí)
/usr/local/nginx/sbin/nginx -s reload
4.4 檢查升級(jí)情況
# nginx -vnginx version: nginx/1.8.0
版本號(hào)已變成1.8.0
,升級(jí)成功。