Nginx網(wǎng)站服務(wù)過程詳解
一.關(guān)于Nginx的特點(diǎn)
- 一款高性能、異步非阻塞工作模式、輕量級(jí)Web服務(wù)軟件
- 穩(wěn)定性高
- 系統(tǒng)資源消耗低
- 對(duì)HTTP并發(fā)連接的處理能力高
- 單臺(tái)物理服務(wù)器可支持30000~50000個(gè)并發(fā)請(qǐng)求
二.編譯安裝nginx服務(wù)
1.關(guān)閉防火墻,將安裝nginx所需軟件包傳到/opt目錄下
systemctl stop firewalld systemctl disable firewalld setenforce 0 nginx-1.12.0.tar.gz



2.安裝依賴包
yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++ make

3.創(chuàng)建運(yùn)行用戶、組(nginx服務(wù)程序默認(rèn)以 nobody 身份運(yùn)行,建議為其創(chuàng)建專門的用戶賬號(hào),以便更準(zhǔn)確地控制其訪問權(quán)限)
useradd -M -s /sbin/nologin nginx

4.編譯安裝Nginx
cd /opt tar zxvf nginx-1.12.0.tar.gz -C /opt/
cd nginx-1.12.0/ ./configure \ --prefix=/usr/local/nginx \ #指定nainx的安裝路徑 --user=nginx \ #指定用戶名 --group=nginx \ #指定組名 --with-http_stub status_module #啟用 http_stub_status_module 模塊以支持狀態(tài)統(tǒng)計(jì)
make && make install In -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ #讓系統(tǒng)識(shí)別nginx的操作命令



5.檢查、啟動(dòng)、重啟、停止 nginx服務(wù)
啟動(dòng)
nginx nginx -t #開啟nginx服務(wù)一些方法 /usr/local/nginx/sbin/nginx

停止
cat /usr/local/nginx/logs/nginx.pid #查看nginx的PID號(hào)的幾種方法 netstat -lntp | grep nginx ss -lntp | grep nginx ps aux | grep nginx
kill -3 <PID號(hào) kill -s QUIT <PID號(hào)> killall -3 nginx killall -s QUIT nqinx


重載
kill -l <PID號(hào)> kill -s HUP <PID號(hào)> killall -1 nginx killall -s HUP nginx
日志分割,重新打開日志文件
kill -USR1 <PID號(hào)>
平滑升級(jí)
kill -USR2 <PID號(hào)>
新版本升級(jí)
tar -zxvf nqinx-1.xx.xx.tar.gz cd nginx-1.xx.xx ./configure \ --prefix=/usr/local/nginx \ --user=nginx \ --group=nginx \ --with-http_stub_status_module \ --with-http_ssl_module make mv/usr/local/nqinx/sbin/nqinx/usr/local/nginx/sbin/nqinxold cp objs/nqinx /usr/local/nqinx/sbin/nginx make upgrade


6.添加Nginx系統(tǒng)服務(wù)
方法一


方法二


三.認(rèn)識(shí)Nginx服務(wù)的主配置文件 nginx.conf
1.全局配置
vim /usr/local/nginx/conf/nginx.conf
#user nobody; #運(yùn)行用戶,若編譯時(shí)未指定則默認(rèn)為nobody worker_processes 1; #工作進(jìn)程數(shù)量,一般設(shè)置為和cPu核數(shù)一樣;設(shè)置為auto,nginx將會(huì)自己獲取這個(gè)數(shù)值 #error_log logs/error.log; #錯(cuò)誤曰志文件的位置 #pid logs/ nginx.pid; #PID 文件的位置 worker_rlinit_nofile 60000; #設(shè)置所有worker進(jìn)程最大可以打開的文件數(shù),默認(rèn)為1024
2.I/O 事件配置
use epoll; #使用epoll I/o模型,2.6及以上版本的系統(tǒng)內(nèi)核,建議使用epoll模型以提高性能 worker_connections 60000 ; #每個(gè)進(jìn)程處理60000個(gè)連接 multi_accept on; #是否一次性將監(jiān)聽到的連接全接收進(jìn)來,默認(rèn)為off,關(guān)閉時(shí)一次接收一條連接 accept_mutex on; #默認(rèn)為on,開啟時(shí)表示以串行方式接入新連接,否則將通報(bào)給所有worker。這可能會(huì)浪費(fèi)資源并產(chǎn)生不可預(yù)計(jì)的后果,例如驚群?jiǎn)栴}
3.HTTP 配置
vim /usr/local/nginx/conf/nginx.conf
4.server塊:配置虛擬主機(jī)的相關(guān)參數(shù),一個(gè)http 塊中可以有多個(gè)server塊;
5.location塊:用于配置匹配的 uri;
6.upstream:配置后端服務(wù)器具體地址,負(fù)載均衡配置不可或缺的部分
四.訪問狀態(tài)統(tǒng)計(jì)配置
1.查看已安裝的Nginx 是否包HTTP_STUB_STATUS 模塊
/usr/local/nginx/sbin/nginx -V cat /opt/nginx-1.12.2/auto/options | grep YES #可查看nginx已安裝的所有模塊


2.修改nginx.conf配置文件,指定訪問位置并添加stub_status 配置
cd /usr/local/nginx/conf
cp nginx.conf nginx.conf.bak
vim /usr/local/nginx/conf/nginx.conf
location /status {
stub status on;
access log off;
}

3.重啟服務(wù),訪問測(cè)試
systemctl daemon- reload systemctl restart nginx 瀏覽器訪問http://192.168.247.131/status curl -s http://192.168.247.131/status



到此這篇關(guān)于Nginx網(wǎng)站服務(wù)的文章就介紹到這了,更多相關(guān)Nginx網(wǎng)站服務(wù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Nginx 緩存系統(tǒng) proxy_cache工作原理解析
Nginx 的 proxy_cache 模塊允許 Nginx 作為反向代理服務(wù)器時(shí)緩存后端服務(wù)器的響應(yīng),本文給大家介紹Nginx 緩存系統(tǒng) proxy_cache的工作原理,感興趣的朋友跟隨小編一起看看吧2024-12-12
nginx的master進(jìn)程和worker進(jìn)程用法解讀
Nginx啟動(dòng)后包含master和worker進(jìn)程,master負(fù)責(zé)管理worker及讀取配置,worker處理請(qǐng)求,通過worker_processes設(shè)置worker數(shù)量(通常不超過CPU核心數(shù))或auto自動(dòng)檢測(cè),結(jié)合worker_cpu_affinity綁定CPU核心以優(yōu)化性能2025-07-07
詳解Nginx防盜鏈和Nginx訪問控制與Nginx解析php的配置
這篇文章主要介紹了詳解Nginx防盜鏈和Nginx訪問控制與Nginx解析php的配置的相關(guān)資料,這里提供實(shí)例幫助大家,學(xué)習(xí)理解這部分內(nèi)容,需要的朋友可以參考下2017-08-08
Nginx中日志模塊的應(yīng)用和配置應(yīng)用示例
Nginx是一款高性能的HTTP和反向代理服務(wù)器,廣泛應(yīng)用于互聯(lián)網(wǎng)領(lǐng)域,這篇文章主要介紹了Nginx中日志模塊的應(yīng)用和配置,下面通過一個(gè)簡(jiǎn)單的實(shí)例來演示Nginx日志模塊的應(yīng)用和配置,需要的朋友可以參考下2024-02-02
Nginx大并發(fā)優(yōu)化實(shí)戰(zhàn)
這篇文章主要介紹了Nginx大并發(fā)優(yōu)化實(shí)戰(zhàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10
nginx ServerName匹配規(guī)則實(shí)現(xiàn)
本文主要介紹了nginx ServerName匹配規(guī)則實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2007-02-02

