參考文章:[
tar zxvf nginx-
1.10
.1.tar.gz
cd nginx-
1.10
.1.tar.gz
./configure --prefix=/usr/local/nginx --
with
-stream
--with
-cc=/usr/sfw/bin/gcc
make
注意:這裡make就行,不要make install。其中–prefix=/usr/local/nginx 為原來安裝nginx的目錄。
編譯完,在nginx-1.10.1資料夾下的objs目錄下有乙個nginx執行檔案就是新的執行檔案。
# 備份原理的nginx執行檔案
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old
# 複製新的nginx執行檔案到安裝目錄下
cp objs/nginx /usr/local/nginx/sbin/nginx
# 顯示nginx是否執行正常
/usr/local/nginx/sbin/nginx -t
# 顯示nginx版本資訊
/usr/local/nginx/sbin/nginx -v
在執行/usr/local/nginx/sbin/nginx -t 這一步時,有可能會報錯:
nginx: error while loading shared libraries: libpcre.so.1: cannot open shared object file: no such file or directory
從錯誤看,是缺少了libpcre.so.1這個檔案,我們可以進一步檢查一下:
[root@localhost /]#ldd $(which /usr/local/nginx/sbin/nginx)
linux-gate.so
.1 => (0x0071b000)
libpthread.so
.0 => /lib/libpthread.so
.0 (0×00498000)
libcrypt.so
.1 => /lib/libcrypt.so
.1 (0×00986000)
libpcre.so
.1 => not found
libcrypto.so
.6 => /lib/libcrypto.so
.6 (0×00196000)
libz.so
.1 => /lib/libz.so
.1 (0×00610000)
libc.so
.6 => /lib/libc.so
.6 (0x002d7000)
/lib/ld-linux.so
.2 (0x006a8000)
libdl.so
.2 => /lib/libdl.so
.2 (0x008c3000)
可以看到就是 libpcre.so.1 => not found ,這個問題很好解決:
#如果是32位系統
[root@localhost /]# ln -s /lib/libpcre.so.1 /lib
#如果是64位系統
[root@localhost /]# ln -s /lib/libpcre.so.1 /lib64
然後再執行 /usr/local/nginx/sbin/nginx -t 就可以成功了。 Nginx 無縫公升級
今天閒來研究了一下nginx的無縫公升級,還真是簡單啊,之前看了些文章寫的是1.1之前版本的無縫公升級,說是make以後,不要make install,要手動將老的nginx檔案進行備份,我試了一下1.1.0公升級到1.1.1,完全不需要這個操作。假如我現在系統是1.1.0,要公升級到1.1.1,或...
nginx之無縫公升級版本
usr local nginx sbin nginx v 檢視現有版本nginx version nginx 1.4.3 注意只make 不要make install mv usr local nginx sbin nginx usr local nginx sbin nginx date m d ...
免費購買SSL證書,nginx無縫公升級https
最近在公升級交流學習社群,覺得有必要公升級成https.以下是自己在公升級中記錄。以下包括以下部分 一 阿里雲免費購買ssl證書 1 自己在阿里雲申請了免費的,然後自己支付0元,購買了ssl證書 2 我選擇dns驗證 二 nginx無縫公升級https 4 檢視nginx是否支援ssl 5 配置ss...