安裝步驟:
/* 1. 安裝編譯工具及庫文件 */
yum -y install gcc gcc-c++ automake autoconf libtool make
/*
選定源碼目錄
可以是任何目錄,本文選定的是/usr/local/src
2. 安裝PCRE
注意:pcre 必須是最新版的
PCRE 作用是讓 Nginx 支持 Rewrite 功能。
*/
cd /usr/local/src && wget http://downloads.sourceforge.net/project/pcre/pcre/8.43/pcre-8.43.tar.gz && tar -zxvf pcre-8.43.tar.gz && cd pcre-8.43 && ./configure && make && make install && pcre-config --version
/* 3. 安裝zlib庫 */
cd /usr/local/src && wget http://zlib.net/zlib-1.2.11.tar.gz && tar -zxvf zlib-1.2.11.tar.gz && cd zlib-1.2.11 && ./configure && make && make install
/* 4. 安裝OpenSSL */
cd /usr/local/src && wget https://www.openssl.org/source/openssl-1.0.2t.tar.gz && tar -zxvf openssl-1.0.2t.tar.gz
/* 5. 安裝Nginx */
cd /usr/local/src && wget http://nginx.org/download/nginx-1.17.6.tar.gz && tar -zxvf nginx-1.17.6.tar.gz && cd nginx-1.17.6 && ./configure --sbin-path=/usr/local/nginx/nginx \ --conf-path=/usr/local/nginx/nginx.conf \ --pid-path=/usr/local/nginx/nginx.pid \ --with-http_ssl_module \ --with-pcre=/usr/local/src/pcre-8.43 \ --with-zlib=/usr/local/src/zlib-1.2.11 \ --with-openssl=/usr/local/src/openssl-1.0.2t && make && make install
說明:
nginx 源碼包所攜帶的 configure 命令的參數最好查看一下官方文檔或者相關資料,因為默認有一部分模塊是沒有加載的(--with表示加載該模塊,--without表示不加載該模塊)。
也可以使用以下命令查看:
cd /usr/local/src/nginx-1.17.6 && ./configure --help
#指定worker進程運行使用的用戶和用戶所屬的用戶組
#--user=username
#--group=groupname
/* 6. 查看是否安裝成功 */
安裝成功后 /usr/local/nginx 目錄下如下
fastcgi.conf koi-win nginx.conf.default fastcgi.conf.default logs scgi_params fastcgi_params mime.types scgi_params.default fastcgi_params.default mime.types.default uwsgi_params html nginx uwsgi_params.default koi-utf nginx.conf win-utf
/* 7. 啟動
確保系統的 80 端口沒被其他程序占用,運行/usr/local/nginx/nginx 命令來啟動 Nginx,
*/
netstat -ano|grep 80
/* 如果查不到結果后執行,有結果則忽略此步驟(ubuntu下必須用sudo啟動,不然只能在前台運行) */
sudo /usr/local/nginx/nginx
/* 8. 開放80端口 (目前Centos8的防火牆已經更改為firewalld,iptables已經不使用)
先查看防火牆狀態 systemctl status firewalld
如果開啟的情況下,則需要添加開放端口
參考資料:
https://www.cnblogs.com/archoncap/p/5402983.html
*/
firewall-cmd --zone=public --add-port=80/tcp --permanent && systemctl restart firewalld.service
/* 9. 驗證是否安裝成功 */
/* nginx 本機執行 */ curl http://localhost
如下圖,則表示成功
/* 10. 可能用到的一些命令 */
/usr/local/nginx/nginx -s reload # 重新載入配置文件 /usr/local/nginx/nginx -s reopen # 重啟 Nginx /usr/local/nginx/nginx -s stop # 停止 Nginx
參考資料:
說明:
1. nginx 中文網(http://www.nginx.cn/install)的安裝過程有一部分是錯誤的("/opt/app/openet/oetal1/chenhe" 路徑應該為 "/usr/local/src")
2. 安裝過程中,如果需要切換任意軟件(例如PCRE)的版本號,注意要全面檢查一遍,防止漏改
3. 如果Centos 8是虛擬機,可以在主機執行以下命令來查看虛擬機的80端口是否打開(如果不報錯,就是已經打開了)
telnet {虛擬機IP} 80