国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

nginx基礎(chǔ)1——工作原理、安裝配置、命令參數(shù)

這篇具有很好參考價(jià)值的文章主要介紹了nginx基礎(chǔ)1——工作原理、安裝配置、命令參數(shù)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、基本了解

nginx簡介:

  1. nginx是一款輕量級(jí)的Web服務(wù)器、反向代理服務(wù)器及電子郵件(IMAP/POP3)代理服務(wù)器,并在一個(gè)BSD-like協(xié)議下發(fā)行。
  2. nginx由俄羅斯的程序設(shè)計(jì)師Igor Sysoev所開發(fā),最初供俄國大型的入口網(wǎng)站及搜尋引擎Rambler使用。
  3. nginx第一個(gè)公開版本0.1.0發(fā)布于2004年10月4日。其將源代碼以類BSD許可證的形式發(fā)布,因它的穩(wěn)定性、豐富的功能集、示例配置文件和低系統(tǒng)資源的消耗而聞名。2011年6月1日,nginx 1.0.4發(fā)布。
  4. nginx的特點(diǎn)是占有內(nèi)存少,并發(fā)能力強(qiáng),事實(shí)上nginx的并發(fā)能力確實(shí)在同類型的網(wǎng)頁服務(wù)器中表現(xiàn)較好,中國大陸使用nginx網(wǎng)站用戶有:百度、京東、新浪、網(wǎng)易、騰訊、淘寶等。

1.1 特性優(yōu)點(diǎn)

nginx特性:

  1. 在高連接并發(fā)的情況下,nginx是Apache服務(wù)器不錯(cuò)的替代品,能夠支持高達(dá)50000個(gè)并發(fā)連接數(shù)的響應(yīng)。
  2. 使用epoll and kqueue作為開發(fā)模型。
  3. nginx作為負(fù)載均衡服務(wù)器:nginx既可在內(nèi)部直接支持和PHP程序?qū)ν膺M(jìn)行服務(wù),也可支持作為HTTP代理服務(wù)器對(duì)外進(jìn)行服務(wù)。
  4. nginx采用C進(jìn)行編寫,不論系統(tǒng)資源開銷還是CPU使用效率都比Perlbal要好很多

nginx優(yōu)點(diǎn):

  1. 高并發(fā)連接:官方測試能夠支撐5萬并發(fā)連接,在實(shí)際生產(chǎn)環(huán)境中跑到2-3萬并發(fā)連接數(shù)。
  2. 內(nèi)存消耗少:在3萬并發(fā)連接下,開啟的10個(gè)nginx進(jìn)程才消耗150M內(nèi)存(15M*10=150M)。
  3. 配置文件非常簡單:風(fēng)格跟程序一樣通俗易懂。
  4. 成本低廉:nginx為開源軟件,可以免費(fèi)使用。而購買F5 BIG-IP、NetScaler等硬件負(fù)載均衡交換機(jī)則需要十多萬至幾十萬人民幣。
  5. 支持Rewrite重寫規(guī)則:能夠根據(jù)域名、URL的不同,將HTTP請(qǐng)求分到不同的后端服務(wù)器群組。
  6. 內(nèi)置的健康檢查功能:如果Nginx Proxy后端的某臺(tái)Web服務(wù)器宕機(jī)了,不會(huì)影響前端訪問。
  7. 節(jié)省帶寬:支持GZIP壓縮,可以添加瀏覽器本地緩存的Header頭。
  8. 穩(wěn)定性高:用于反向代理,宕機(jī)的概率微乎其微。
  9. 模塊化設(shè)計(jì):模塊可以動(dòng)態(tài)編譯。
  10. 外圍支持好:文檔全,二次開發(fā)和模塊較多。
  11. 支持熱部署:可以不停機(jī)重載配置文件。
  12. 支持事件驅(qū)動(dòng)、AIO(AsyncIO,異步IO)、mmap(Memory Map,內(nèi)存映射)等性能優(yōu)化

1.2 功能應(yīng)用

nginx基本功能:

  1. 靜態(tài)資源的web服務(wù)器,能緩存打開的文件描述符。
  2. http、smtp、pop3協(xié)議的反向代理服務(wù)器。
  3. 緩存加速、負(fù)載均衡。
  4. 支持FastCGI(fpm,LNMP),uWSGI(Python)等。
  5. 模塊化(非DSO機(jī)制),過濾器zip、SSI及圖像的大小調(diào)整。
  6. 支持SSL。

nginx擴(kuò)展功能:

  1. 基于名稱和IP的虛擬主機(jī)。
  2. 支持keepalive長連接。
  3. 支持平滑升級(jí)。
  4. 定制訪問日志、支持使用日志緩沖區(qū)提高日志存儲(chǔ)性能。
  5. 支持URL重寫。
  6. 支持路徑別名。
  7. 支持基于IP及用戶的訪問控制。
  8. 支持速率限制,支持并發(fā)數(shù)限制。

nginx應(yīng)用類別:

  1. 使用nginx結(jié)合FastCGI運(yùn)行PHP、JSP、Perl等程序。
  2. 使用nginx作反向代理、負(fù)載均衡、規(guī)則過濾。
  3. 使用nginx運(yùn)行靜態(tài)HTML網(wǎng)頁、圖片。
  4. nginx與其他新技術(shù)的結(jié)合應(yīng)用。

1.3 工作模塊分類

基本了解:

  • nginx由內(nèi)核和模塊組成。內(nèi)核的設(shè)計(jì)非常微小和簡潔,完成的工作也非常簡單,僅僅通過查找配置文件將客戶端請(qǐng)求映射到一個(gè)location block,而在這個(gè)location中所配置的每個(gè)指令將會(huì)啟動(dòng)不同的模塊去完成相應(yīng)的工作。
  • location是nginx配置文件中的一個(gè)參數(shù),指定網(wǎng)頁訪問的根地址,location參數(shù)后面指定要訪問的網(wǎng)頁文件路徑。
  • nginx的模塊從結(jié)構(gòu)上分為核心模塊、基礎(chǔ)模塊和第三方模塊

模塊分類:

  • 核心模塊:HTTP模塊(訪問網(wǎng)站)、EVENT模塊(記錄事件)、MAIL模塊(發(fā)送郵件)等。
  • 基本模塊:HTTP Access模塊(訪問)、HTTP FastCGI模塊(lnmp)、HTTP Proxy模塊(反向代理)、HTTP Rewrite模塊(重定向URL)。
  • 第三方模塊:HTTP Upstream模塊、Request Hash模塊、Notice模塊和HTTP Access Key模塊。

注意事項(xiàng):

  1. 基本模塊在編譯時(shí)默認(rèn)是開啟狀態(tài),不能被禁用。
  2. 基本模塊包括:
    • 核心模塊(提供基本功能和指令),常見核心模塊指令大部分是放置在配置文件的頂部,需要頂行寫,不能有空格和括號(hào)包含關(guān)系。
    • 事件模塊(Nginx內(nèi)配置網(wǎng)絡(luò)使用的能力),常見的events(事件)模塊指令,大部分是放置在配置文件的頂部。
    • 配置模塊(提供包含機(jī)制),指主配置文件中可以通過引用其他路徑下的配置文件參數(shù)實(shí)現(xiàn)功能,可以簡化配置文件,方便閱讀。
功能模塊分類 作用
Proxies(代理器模塊) 就是nginx的HTTP Upstream之類的模塊,主要與后端服務(wù)比如fastcgi等操作交互,實(shí)現(xiàn)服務(wù)代理和負(fù)載均衡等功能。
Handlers(處理器模塊) 此類模塊直接處理請(qǐng)求,并進(jìn)行輸出內(nèi)容和修改headers信息等操作。handlers處理器模塊一般只能有一個(gè)。
Filters(過濾器模塊) 此類模塊主要對(duì)其他處理器模塊輸出的內(nèi)容進(jìn)行修改操作,最后由nginx輸出。

1.4 模塊配置方法

  • 官方核心模塊配置文檔

1.如下圖。這個(gè)核心模塊參數(shù)可以配置在配置文件中的events中的括號(hào)里。
nginx基礎(chǔ)1——工作原理、安裝配置、命令參數(shù),nginx,nginx,運(yùn)維,linux
2.如下圖。這個(gè)配置參數(shù)只能單獨(dú)寫一行,且頂行寫,不能存在任何一個(gè)括號(hào)里。
nginx基礎(chǔ)1——工作原理、安裝配置、命令參數(shù),nginx,nginx,運(yùn)維,linux
3.如下圖。這個(gè)配置參數(shù)可以配置在main, http, mail, stream, server, location任意位置。

  • main:對(duì)本機(jī)所有網(wǎng)站生效。
  • http:對(duì)所有server網(wǎng)站生效。
  • server:對(duì)某一個(gè)網(wǎng)站生效。
  • location:對(duì)某一個(gè)網(wǎng)站中的某一個(gè)訪問頁面生效。

nginx基礎(chǔ)1——工作原理、安裝配置、命令參數(shù),nginx,nginx,運(yùn)維,linux

二、工作原理

基本了解:

  • nginx的模塊直接被編譯進(jìn)nginx,屬于靜態(tài)編譯。若要使用其他模塊功能時(shí),再添加模塊編譯,屬于動(dòng)態(tài)編譯。
  • 啟動(dòng)nginx后,nginx的模塊被自動(dòng)加載,與Apache不一樣,首先將模塊編譯為一個(gè)so文件,然后在配置文件中指定是否進(jìn)行加載。
  • 在解析配置文件時(shí),nginx的每個(gè)模塊都有可能去處理某個(gè)請(qǐng)求,但是同一個(gè)處理請(qǐng)求只能由一個(gè)模塊來完成。

nginx進(jìn)程架構(gòu):

  1. 啟動(dòng)nginx時(shí),會(huì)啟動(dòng)一個(gè)Master進(jìn)程,這個(gè)進(jìn)程不處理任何客戶端的請(qǐng)求,主要用來產(chǎn)生worker線程。
  2. 每個(gè)worker線程下有多個(gè)工作模塊,根據(jù)不同的客戶端請(qǐng)求,各個(gè)工作模塊分別對(duì)應(yīng)處理一個(gè)請(qǐng)求。
  3. 當(dāng)客戶端請(qǐng)求web網(wǎng)站時(shí),實(shí)際上是請(qǐng)求master進(jìn)程產(chǎn)生的worker線程中的工作模塊。
    nginx基礎(chǔ)1——工作原理、安裝配置、命令參數(shù),nginx,nginx,運(yùn)維,linux

HTTP請(qǐng)求和響應(yīng)的過程:

  1. 客戶端發(fā)出請(qǐng)求,經(jīng)過負(fù)載均衡高可用代理服務(wù)器后,到達(dá)某一臺(tái)nginx服務(wù)器。
  2. nginx程序收到請(qǐng)求后,選擇一個(gè)處理器模塊進(jìn)行處理,再通過過濾器模塊生成請(qǐng)求內(nèi)容,再繼續(xù)寧內(nèi)容處理。
  3. 最后將處理結(jié)果發(fā)送給客戶端。
    nginx基礎(chǔ)1——工作原理、安裝配置、命令參數(shù),nginx,nginx,運(yùn)維,linux

WEB服務(wù)請(qǐng)求步驟:

  1. 客戶都安訪問網(wǎng)站url,比如訪問的是80端口,就需要建立tcp連接進(jìn)行三次握手。
  2. 建立連接后,nginx服務(wù)端收到客戶都安請(qǐng)求,開始調(diào)用處理器模塊處理請(qǐng)求,根據(jù)客戶端的請(qǐng)求去尋找資源。
  3. 找到資源后,就開始輸出結(jié)果,建立響應(yīng)報(bào)文,最后發(fā)送給客戶端。
  4. 最后,nginx服務(wù)端記錄整個(gè)過程的日志。
    nginx基礎(chǔ)1——工作原理、安裝配置、命令參數(shù),nginx,nginx,運(yùn)維,linux

三、安裝與配置

  • 下載地址

1.創(chuàng)建系統(tǒng)用戶nginx。

useradd -r -M -s /sbin/nologin nginx

2.安裝依賴包。

yum -y install pcre-devel openssl openssl-devel gd-devel gcc gcc-c++ make
yum -y groups mark install 'Development Tools'

3.創(chuàng)建日志存放目錄。

mkdir -p /var/log/nginx
chown -R nginx.nginx /var/log/nginx

4.下載nginx安裝包,,解壓,編譯安裝。

wget http://nginx.org/download/nginx-1.24.0.tar.gz
tar zxf nginx-1.24.0.tar.gz
cd nginx-1.24.0

//編譯模塊。
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-debug \
--with-http_ssl_module \
--with-http_realip_module \
--with-http_image_filter_module \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--http-log-path=/var/log/nginx/access.log \
--error-log-path=/var/log/nginx/error.log

//安裝。
make -j $(nproc) && make install

5.配置環(huán)境變量,啟動(dòng)nginx服務(wù)。

echo 'export PATH=/usr/local/nginx/sbin:$PATH' > /etc/profile.d/nginx.sh
source /etc/profile.d/nginx.sh

//啟動(dòng)。
nginx

6.訪問web網(wǎng)頁。

nginx基礎(chǔ)1——工作原理、安裝配置、命令參數(shù),nginx,nginx,運(yùn)維,linux

四、常用命令

參數(shù) 釋義
-t 檢查配置文件語法
-v 輸出nginx的版本
-c 指定配置文件的路徑,啟動(dòng)nginx時(shí)可以指定其他配置文件。
-s 發(fā)送服務(wù)控制信號(hào),可選值有stop、quit、reopen、reload。
-V 編譯時(shí)使用的參數(shù)

1.檢查使用的配置文件語法是否正確。
nginx基礎(chǔ)1——工作原理、安裝配置、命令參數(shù),nginx,nginx,運(yùn)維,linux

2.查看nginx已編譯安裝的模塊。若要繼續(xù)添加模塊,則需要把已安裝的模塊一起寫進(jìn)去編譯。
nginx基礎(chǔ)1——工作原理、安裝配置、命令參數(shù),nginx,nginx,運(yùn)維,linux
3.重啟nginx服務(wù),一般都是先停止,再重新啟動(dòng)。
nginx基礎(chǔ)1——工作原理、安裝配置、命令參數(shù),nginx,nginx,運(yùn)維,linux
4.重新讀取配置文件。文章來源地址http://www.zghlxwxcb.cn/news/detail-573258.html

nginx -s reload

到了這里,關(guān)于nginx基礎(chǔ)1——工作原理、安裝配置、命令參數(shù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • linux安裝nginx,配置系統(tǒng)文件,配置systemctl命令,親測可用,

    先安裝gcc-c++編譯器 安裝pcre包 安裝zlib包 在/usr/local/創(chuàng)建nginx文件 進(jìn)入nginx目錄 下載nginx安裝包 注:如果沒有wget命令,就安裝命令 解壓安裝包 執(zhí)行以下三個(gè)命令 添加到系統(tǒng)服務(wù)中 最后加入配置 重載配置 添加systemctl命令 添加內(nèi)容 重新加載系統(tǒng)服務(wù) 啟動(dòng)服務(wù) 停止服務(wù) 重啟

    2024年02月02日
    瀏覽(54)
  • 【運(yùn)維知識(shí)大神篇】超詳細(xì)的ELFK日志分析教程4(ES讀寫文檔原理+集群角色+master節(jié)點(diǎn)與數(shù)據(jù)節(jié)點(diǎn)分離+Logstash安裝部署+Logstash采集本地文件+采集Nginx日志)

    【運(yùn)維知識(shí)大神篇】超詳細(xì)的ELFK日志分析教程4(ES讀寫文檔原理+集群角色+master節(jié)點(diǎn)與數(shù)據(jù)節(jié)點(diǎn)分離+Logstash安裝部署+Logstash采集本地文件+采集Nginx日志)

    本篇文章繼續(xù)給大家介紹ELFK日志分析的有關(guān)內(nèi)容,我們的ES和Kibana都介紹的差不多了,所以本篇文章重點(diǎn)介紹Logstash的有關(guān)內(nèi)容,介紹完畢后,我們的ELFK架構(gòu)將初步形成,此外還有ES讀寫文檔的原理,了解原理,更深層次的理解,使用ES,集群角色和master節(jié)點(diǎn)與數(shù)據(jù)節(jié)點(diǎn)分離,

    2024年02月02日
    瀏覽(29)
  • 三、Docker:Compose安裝、使用、文件結(jié)構(gòu)、配置參數(shù)與命令詳解

    三、Docker:Compose安裝、使用、文件結(jié)構(gòu)、配置參數(shù)與命令詳解

    注意:后續(xù)技術(shù)分享,第一時(shí)間更新,以及更多更及時(shí)的技術(shù)資訊和學(xué)習(xí)技術(shù)資料 ,將在公眾號(hào) CTO Plus 發(fā)布,請(qǐng)關(guān)注公眾號(hào): CTO Plus ? ? Docker-compose 是用于定義和運(yùn)行多容器 Docker 應(yīng)用程序的編排工具。使用 docker-compose 后不再需要逐一創(chuàng)建和啟動(dòng)容器??梢允褂肶ML文件來配

    2024年02月10日
    瀏覽(17)
  • SSH工作原理&Ubuntu20.04安裝并配置SSH&設(shè)置SSH免密登錄

    SSH工作原理&Ubuntu20.04安裝并配置SSH&設(shè)置SSH免密登錄

    目錄 一、SSH的介紹(服務(wù)器端,客戶端) 1、SSH(遠(yuǎn)程連接工具)連接原理: 2、SSH的安全機(jī)制 3、兩種級(jí)別的驗(yàn)證方法(登錄方法) 二、ssh的安裝與啟動(dòng) 1、安裝 2、啟動(dòng)服務(wù)器的SSH服務(wù) 三、SSH客戶端 1、前置知識(shí) 2、口令登錄 1)、登錄命令 2)、驗(yàn)證過程 3)、登錄失?。?、

    2024年02月03日
    瀏覽(16)
  • Nginx 工作原理簡介

    Nginx 工作原理簡介

    在了解Nginx工作原理之前,我們先來了解下幾個(gè)基本的概念 以及常見的I/O模型。 同步 :就是指調(diào)用方發(fā)起一個(gè)調(diào)用,在沒有得到調(diào)用結(jié)果之前,該調(diào)用不返回。換句話說,也就是調(diào)用方發(fā)起一個(gè)調(diào)用后,一直等待被調(diào)用方返回結(jié)果,直到獲取結(jié)果后才執(zhí)行后續(xù)操作。 生活中

    2024年02月04日
    瀏覽(17)
  • Nginx工作原理

    本文分享自天翼云開發(fā)者社區(qū)《Nginx工作原理》,作者:王****秀 Nginx的進(jìn)程模型 Nginx服務(wù)器由一個(gè)Master進(jìn)程和多個(gè)Worker進(jìn)程組成: Master進(jìn)程:管理Worker進(jìn)程。對(duì)外接口:接收外部的操作(信號(hào));對(duì)內(nèi)轉(zhuǎn)發(fā):根據(jù)外部操作的不同,通過信號(hào)管理Worker;監(jiān)聽:監(jiān)控Worker進(jìn)程的運(yùn)

    2024年02月08日
    瀏覽(15)
  • 【基礎(chǔ)篇】Nginx安裝 SSL模塊、配置 HTTPS詳細(xì)步驟

    【基礎(chǔ)篇】Nginx安裝 SSL模塊、配置 HTTPS詳細(xì)步驟

    nginx安裝 1、查看 nginx是否安裝 http_ssl_module 模塊 如果出現(xiàn) configure arguments: –with-http_ssl_module, 則已安裝(下面的步驟可以跳過,進(jìn)入 SSL 證書部署、nginx.conf 配置)。 否則按下述執(zhí)行命令。 2、進(jìn)入nginx源碼包,重新執(zhí)行下面命令,重新編譯安裝三部曲 3、上述命令執(zhí)行完以后

    2023年04月16日
    瀏覽(32)
  • 【運(yùn)維安全】運(yùn)維界葵花寶典:Nginx配置與優(yōu)化秘籍

    【運(yùn)維安全】運(yùn)維界葵花寶典:Nginx配置與優(yōu)化秘籍

    必要的原理介紹 ● Nginx 里有一個(gè)master進(jìn)程和多個(gè)worker進(jìn)程.master進(jìn)程并不處理網(wǎng)絡(luò)請(qǐng)求,主要負(fù)責(zé)調(diào)度工作進(jìn)程: 加載配置,啟動(dòng)工作進(jìn)程及非停升級(jí).worker進(jìn)程負(fù)責(zé)處理網(wǎng)絡(luò)請(qǐng)求與響應(yīng). ● master進(jìn)程主要用來管理worker進(jìn)程,具體包括如下4個(gè)主要功能: 接收來自外界的信號(hào) 向各wo

    2024年02月21日
    瀏覽(25)
  • 穩(wěn)壓二極管工作原理、重要參數(shù)意義和典型電路參數(shù)計(jì)算

    穩(wěn)壓二極管工作原理、重要參數(shù)意義和典型電路參數(shù)計(jì)算

    穩(wěn)壓二極管的工作原理:穩(wěn)壓二極管也叫穩(wěn)壓管,它在電路中一般起到穩(wěn)定電壓的作用,也可以為電路提供基準(zhǔn)電壓值。穩(wěn)壓二極管使用特殊工藝制造,這種工藝使它在反向擊穿時(shí)仍然可以長時(shí)間穩(wěn)定工作,不損壞,而工作在反向擊穿狀態(tài)的穩(wěn)壓管只要工作電流保持在一定范

    2024年02月13日
    瀏覽(24)
  • Linux下Web服務(wù)器工作模型及Nginx工作原理詳解

    在Linux環(huán)境下,Web服務(wù)器處理并發(fā)連接請(qǐng)求的工作模型主要有阻塞、非阻塞、同步、異步等方式。以下是對(duì)各種工作模型的淺析: 同步阻塞 I/O: 類比于在餐廳等飯,需要在取餐處等待,期間不能進(jìn)行其他事情。 同步非阻塞 I/O: 類比于在餐廳等飯,可以進(jìn)行其他事情,但需

    2024年02月03日
    瀏覽(42)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包