@[TOC](nginx 手動離線安裝 及依賴包安裝(pcre+zlib+openssl))
博主 默語帶您 Go to New World.
? 個人主頁—— 默語 的博客????
《java 面試題大全》
《java 專欄》
??惟余輩才疏學淺,臨摹之作或有不妥之處,還請讀者海涵指正。???
《MYSQL從入門到精通》數(shù)據(jù)庫是開發(fā)者必會基礎之一~
?? 吾期望此文有資助于爾,即使粗淺難及深廣,亦備添少許微薄之助。茍未盡善盡美,敬請批評指正,以資改進。!???
摘要:
本文介紹了使用源碼編譯安裝 Nginx 的詳細步驟及編譯參數(shù)信息。首先,提到了必需的依賴包,包括 PCRE、Zlib 和 OpenSSL,并提供了它們的下載鏈接。隨后,詳細說明了編譯環(huán)境的準備工作,包括檢查和安裝 gcc、g++、以及 make。接著,逐步介紹了如何安裝各個依賴包以及 Nginx 的過程,包括解壓、配置、編譯和安裝。最后,給出了啟動 Nginx 的命令,并提示如何驗證安裝是否成功。
nginx:http://nginx.org/en/download.html (版本:nginx-1.20.1 tar.gz)
pcre:https://sourceforge.net/projects/pcre/files/pcre/8.45/(版本:pcre-8.45.tar.gz)
zlib:http://www.zlib.net/(版本:zlib-1.2.13.tar.gz)
oppenssl:https://www.openssl.org/source/(版本:openssl-1.1.0h.tar.gz)
可自行根據(jù)個人需要下載適合的依賴包
Pcre:是一個正則表達式庫。(必須)
Zlib:是一個開源的數(shù)據(jù)壓縮庫,提供了對數(shù)據(jù)的無損壓縮和解壓功能。(必須)
Openssl:是一個開源的加密庫,提供了各種加密算法和安全協(xié)議的實現(xiàn)。(必須)
本人把所有tar.gz包都放在 /usr/local/nginx目錄下 ( 權限777 )
nginx可以使用各平臺的默認包來安裝,本文是介紹使用源碼編譯安裝,包括具體的編譯參數(shù)信息。
正式開始前,編譯環(huán)境gcc g++ 開發(fā)庫之類的需要提前裝好,這里默認你已經(jīng)裝好。
查看 gcc 版本
$ gcc -v
$ gcc --version
查看 g++ 版本
$ g++ -v
$ g++ --version
安裝make:
yum -y install gcc automake autoconf libtool make
安裝g++:
$ sudo yum install gcc g++ # 通過下載列表中提供的地址下載安裝包, 并安裝
或者
命令:sudo yum install -y gcc-c++
gcc g++ 我這邊離線安裝問題比較多;大家自行嘗試
離線版本:
阿里云盤下載地址:https://www.aliyundrive.com/s/VpQ3g4L6oub
提取碼: sj94
1、安裝pcre
解壓:tar -zxvf pcre-8.34.tar.gz
進入解壓目錄:cd pcre-8.34
可要需要賦予權限 chmod 777 configure
配置:./configure
編譯:make
安裝:make install
如出現(xiàn):
something went wrong bootstrapping makefile fragmentsfor automatic dependency tracking, If GNU make was not used, considerre-running the configure script with MAKE-"gmake" (or whatever isnecessary). You can also try re-running configure with the--disable-dependency tracking' option to at least be able to buildthe package (albeit without support for automatic dependency tracking)See config.log' for more details
把上面的make安裝下就行了;安裝make:
(各個版本pcre和pcre2下載網(wǎng)址:https://ftp.pcre.org/pub/pcre/)
2、安裝OpenSSL
解壓:tar -zxvf openssl-1.1.1g.tar.gz
進入解壓目錄:cd openssl-1.1.1g
可要需要賦予權限 chmod 777 config
配置:./config
編譯:make
安裝:make install
如果輸入openssl version不顯示版本號
在root用戶下執(zhí)行:
ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/libssl.so.1.1
ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
3、安裝zlib
解壓:tar -zxvf zlib-1.2.11.tar.gz
進入解壓目錄:cd zlib-1.2.11
可要需要賦予權限 chmod 777 configure
配置:./configure
編譯:make
安裝:make install
4.安裝nginx
解壓:tar -zxvf nginx-1.16.1.tar.gz
進入解壓目錄:cd nginx-1.16.1
接下來是重點!!!(下面配置這條命令在一行, 最好粘到文本編輯器里編輯一下)
配置:./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/nginxLibs/pcre-8.34 --with-zlib=/usr/local/nginxLibs/zlib-1.2.11 --with-openssl=/usr/local/nginxLibs/openssl-1.1.1g
或者(我用的下面的)
./configure --prefix=/data/soft/nginx/nginx/nginx-ywc --with-http_stub_status_module --with-http_ssl_module --with-pcre=/data/soft/nginx/nginx/pcre-8.45 --with-zlib=/data/soft/nginx/nginx/zlib-1.3.1 --with-openssl=/data/soft/nginx/nginx/openssl-1.1.0l
這段代碼是在配置nginx編譯安裝的命令。具體解釋如下:
/usr/local/nginx/nginx 這是一個新的路徑
-
--sbin-path
: 指定nginx可執(zhí)行文件的路徑。 -
--conf-path
: 指定nginx配置文件的路徑。 -
--pid-path
: 指定nginx進程ID文件的路徑。 -
--with-http_ssl_module
: 啟用HTTP SSL模塊,使nginx支持HTTPS。 -
--with-pcre
: 指定PCRE庫的路徑,PCRE是Perl Compatible Regular Expressions的縮寫,用于nginx的正則表達式匹配。 -
--with-zlib
: 指定Zlib庫的路徑,Zlib是用于數(shù)據(jù)壓縮和解壓的庫,nginx用它來處理HTTP數(shù)據(jù)的壓縮。 -
--with-openssl
: 指定OpenSSL庫的路徑,OpenSSL用于實現(xiàn)SSL/TLS協(xié)議,從而使nginx支持HTTPS。
它指定了 Nginx 的可執(zhí)行文件路徑、配置文件路徑、進程ID文件路徑,并啟用了 HTTP SSL 模塊以支持 HTTPS。此外,它還指定了 PCRE、Zlib 和 OpenSSL 庫的路徑,這些庫用于正則表達式匹配、數(shù)據(jù)壓縮和解壓、以及實現(xiàn) SSL/TLS 協(xié)議,從而完善了 Nginx 的功能。
(查看若有錯誤去最下邊常見錯誤找)
編譯:make
安裝:make install
安裝成功沒有錯誤的話,你的 /usr/local/nginx/nginx 目錄下如下:
5.啟動nginx
/usr/local/nginx/nginx./sbin/nginx
啟動
如果都沒有錯誤,瀏覽器訪問 服務器ip:80 端口,出現(xiàn)"Welcome to nginx!",恭喜你安裝成功!
./sbin/nginx -V #查看是否依賴
記得開放防火墻的端口:
查看防火墻開啟的端口
firewall-cmd --list-ports
firewall-cmd --state
查看防火墻狀態(tài)
為防火墻開啟端口,可以使用以下命令添加端口規(guī)則
firewall-cmd --zone=public --add-port=YOUR_PORT_NUMBER/TCP --permanent
重新加載firewalld以使更改生效:
firewall-cmd --reload
一次性添加多個端口規(guī)則
firewall-cmd --zone=public --add-port=PORT1/TCP --add-port=PORT2/TCP --add-port=PORT3/UDP --permanent
案例demo:
sudo firewall-cmd --zone=public --add-port=8761/tcp --permanent
注意事項及常見錯誤解決方法:
1.安裝nginx,執(zhí)行配置一步后出現(xiàn)錯誤如下錯誤:(實踩大坑!!!)
src/core/ngx_regex.h:15:18: error: pcre.h
src/core/ngx_regex.h:24: error: expected specifier-qualifier-list before ‘pcre’
解決方法: 此時很有可能是pcre版本太高或者你裝的是pcre2,去上邊手動下載換低版本pcre即可.
2.nginx完全卸載
find / -name nginx 或者 find / -name nginx*
rm -rf 上邊找到nginx路徑
3.pcre卸載
在pcre解壓目錄下執(zhí)行: sudo make uninstall
然后rm -rf pcre解壓目錄(或者直接手動右鍵刪除 你懂的 簡單暴力0.0)
總結(jié):
本文提供了從源碼編譯安裝 Nginx 的全面指南,涵蓋了準備工作、依賴包的下載和安裝、以及 Nginx 的配置和啟動過程。通過詳細說明每個步驟和命令的含義,讀者可以輕松地跟隨指南完成 Nginx 的安裝。同時,提供了解決常見錯誤的方法,幫助讀者順利完成安裝并驗證是否成功。
參考博客:1,2
???? 希望本文能夠給您帶來一定的幫助??文章粗淺,敬請批評指正!????
如對本文內(nèi)容有任何疑問、建議或意見,請聯(lián)系作者,作者將盡力回復并改進??;(聯(lián)系微信:Solitudemind )
點擊下方名片,加入IT技術核心學習團隊。一起探索科技的未來,共同成長。文章來源:http://www.zghlxwxcb.cn/news/detail-852533.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-852533.html
到了這里,關于nginx 手動離線安裝 及依賴包安裝(pcre+zlib+openssl)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!