1.先安裝相關依賴
yum install gcc-c++
yum install pcre pcre-devel
yum install zlib zlib-devel
yum install openssl openssl--devel
2.安裝
安裝之前,最好檢查一下是否已經安裝有nginx
find -name nginx
如果系統已經安裝了nginx,那麼就先卸載
yum remove nginx
首先進入/usr/local目錄
cd /usr/local
從官網下載最新版的nginx
wget http://nginx.org/download/nginx-1.10.4.tar.gz
解壓nginx壓縮包
tar -zxvf nginx-1.7.4.tar.gz
會產生一個nginx-1.7.4 目錄,這時進入nginx-1.7.4目錄
cd nginx-1.7.4
接下來安裝,使用--prefix參數指定nginx安裝的目錄,make、make install安裝
./configure $默認安裝在/usr/local/nginx
make
make install
將對應的makefile文件夾中(如本文中在 /nginx-1.10.3/objs/Makefile) 找到 -Werrori 並去掉 在重新make即可
查了-Werrori意思之後 發現原來它要求GCC將所有的警告當成錯誤進行處理 所有導致錯誤輸出 並不能進行下一步
如果沒有報錯,順利完成後,最好看一下nginx的安裝目錄
whereis nginx
啓動、停止nginx
cd /usr/local/nginx/sbin/
./nginx
./nginx -s stop
./nginx -s quit
./nginx -s reload
./nginx -s quit
:此方式停止步驟是待nginx進程處理任務完畢進行停止。./nginx -s stop
:此方式相當於先查出nginx進程id再使用kill命令強制殺掉進程。
配置SSL報錯:
Starting nginx: nginx: [emerg] unknown directive "ssl" in /usr/local/nginx/conf/nginx.conf:112
在給服務器安裝https證書的時候,重啓服務器後,發現報錯了。
Starting nginx: nginx: [emerg] unknown directive "ssl" in /usr/local/nginx/conf/nginx.conf:112
說是沒有安裝OpenSSL,但是我whereis openssl 發現是有的。直接輸入OpenSSL也是有的。所以斷定肯定不是因爲沒有下載。
然後可能就是再,安裝Nginx的時候,,沒有配置ssl環境。所以就執行。
1、進入Nginx的安裝目錄例如:(/home/nginx-xb/nginx-1.10.1/)
2、進入後執行 ./configure --with-http_ssl_module;
3、然後執行make (不要執行make instal)
4、執行 cp /usr/local/nginx/sbin/nginx /usr/local/nginx /sbin/nginx.bak
cp: overwrite ‘/usr/local/nginx/sbin/nginx.bak’?
[root@vm10-0-0-19 nginx-1.10.1]#
[root@vm10-0-0-19 nginx-1.10.1]# cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
cp: overwrite ‘/usr/local/nginx/sbin/nginx.bak’? Y
注意:上面說,是否覆蓋文件,我就直接回車 了。所以導致執行很多遍都不行。所以:一定要輸入Y確認覆蓋,纔可以的。
5:將新的 nginx 覆蓋舊安裝目錄
cp objs/nginx /usr/local/nginx/sbin/nginx
6.測試一下配置文件是否正確
/usr/local/nginx/sbin/nginx -t
然後重新啓動服務器