溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么編譯安裝Nginx

發(fā)布時(shí)間:2021-12-13 09:54:47 來(lái)源:億速云 閱讀:162 作者:iii 欄目:系統(tǒng)運(yùn)維

這篇文章主要講解了“怎么編譯安裝Nginx”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“怎么編譯安裝Nginx”吧!

前言

由于微信小程序要使用Https,但是又不能修改已有線上的配置。所以最簡(jiǎn)單的方法就是使用nginx轉(zhuǎn)發(fā),在nginx上使用https,然后再轉(zhuǎn)發(fā)到內(nèi)部服務(wù)器。Nginx由于其優(yōu)良的性能。一臺(tái)4核16GB的內(nèi)存完全可以支撐日均百萬(wàn)pv級(jí)別的訪問(wèn)。

基礎(chǔ)知識(shí)

Nginx由于使用了 epoll模型,要求linux的內(nèi)核必須在2.6以上。要了解epoll模型,可以看看知乎上的這篇文章:IO多路復(fù)用與  select,poll與epoll的關(guān)系。

使用 uname -a 查看Linux 內(nèi)核版本,如下是Centos 6.5的顯示:

怎么編譯安裝Nginx

下載

Nginx 的官網(wǎng)的下載地址:http://nginx.org/en/download.html。

Nginx官網(wǎng)提供了三個(gè)類型的版本:

  • Mainline version:Mainline 是 Nginx 目前主力在做的版本,可以說(shuō)是開(kāi)發(fā)版

  • Stable version:***穩(wěn)定版,生產(chǎn)環(huán)境上建議使用的版本

  • Legacy versions:遺留的老版本的穩(wěn)定版

編譯與安裝

nginx依賴以下模塊:

  • gzip模塊需要 zlib 庫(kù) 及其開(kāi)發(fā)環(huán)境

  • rewrite模塊需要 pcre 庫(kù)及開(kāi)發(fā)環(huán)境

  • ssl 功能需要openssl庫(kù)及開(kāi)發(fā)環(huán)境以及 yum install -y gcc-c++ 環(huán)境。  以gzip  模塊為例,查看以下模塊是否安裝:

怎么編譯安裝Nginx

如果沒(méi)有安裝,那么就 yum install zlib zlib-devel。

make是用來(lái)編譯的,它從Makefile中讀取指令,然后編譯。make  install是用來(lái)安裝的,它也從Makefile中讀取指令,安裝到指定的位置。

最簡(jiǎn)單的編譯安裝 Nginx

tar zxvf nginx-1.10.2.tar.gz

解壓以后進(jìn)入到

怎么編譯安裝Nginx

./configure 是用來(lái)檢查本機(jī)的的安裝環(huán)境。在configure階段結(jié)束以后,將會(huì)出現(xiàn)如下信息:

怎么編譯安裝Nginx

可以看到默認(rèn)的安裝目錄以及一些基本的配置。

啟動(dòng)

nginx默認(rèn)采用80端口,在直接啟動(dòng)nginx之前,先檢查80端口是否被占用,使用fuser -n tcp 80或者netstat -pan |  grep :80查看80端口是否被占用。這里假設(shè)沒(méi)有被占用,然后進(jìn)入 /usr/local/nginx(上文提到的默認(rèn)安裝目錄)目錄:

怎么編譯安裝Nginx

訪問(wèn):http://ip:80/就可以看到nginx的歡迎頁(yè)面。

nginx配置

在/usr/local/nginx/conf(默認(rèn)配置)中,有一個(gè)nginx.conf文件。nginx.conf的代碼是這樣的:

怎么編譯安裝Nginx

刪掉不必要的文件,基本文件類型是這個(gè)樣子:

怎么編譯安裝Nginx

注意到最頂上的日志配置嗎?在頂部設(shè)置的配置全局生效。但是子模塊可以覆蓋它。頂部日志配置:

怎么編譯安裝Nginx

假設(shè)開(kāi)發(fā)人員改變了nginx.conf配置,測(cè)試nginx.conf是否合法:

怎么編譯安裝Nginx

nginx配置文件架構(gòu)的圖

怎么編譯安裝Nginx

###https

在編譯階段需要附帶編譯上ssl模塊:./configure --with-http_ssl_module

限流

http://nginx.org/en/docs/http/ngx_http_limit_req_module.html

怎么編譯安裝Nginx

注意在Http中配置以后需要在server中引入。

burst一秒中可以訪問(wèn)的數(shù)據(jù)量。burst相當(dāng)于一個(gè)授權(quán)令牌,每秒中每次查詢,當(dāng)前burst-1,查詢結(jié)束,burst+1;

如果burst為0時(shí),訪問(wèn)不了。

怎么編譯安裝Nginx

可以看到,基本上是1秒返回一次了。

實(shí)例配置

怎么編譯安裝Nginx

感謝各位的閱讀,以上就是“怎么編譯安裝Nginx”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)怎么編譯安裝Nginx這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI