Nginx網(wǎng)站服務(wù)過(guò)程詳解
更新時(shí)間:2023年06月06日 10:50:42 作者:獅子跑了
Nginx是一款高性能、異步非阻塞工作模式、輕量級(jí)Web服務(wù)軟件,這篇文章主要介紹了Nginx網(wǎng)站服務(wù)的相關(guān)知識(shí),需要的朋友可以參考下
一.關(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)建專門(mén)的用戶賬號(hào),以便更準(zhǔn)確地控制其訪問(wè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 #開(kāi)啟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
日志分割,重新打開(kāi)日志文件
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)程最大可以打開(kāi)的文件數(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)聽(tīng)到的連接全接收進(jìn)來(lái),默認(rèn)為off,關(guān)閉時(shí)一次接收一條連接 accept_mutex on; #默認(rèn)為on,開(kāi)啟時(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ù)載均衡配置不可或缺的部分
四.訪問(wèn)狀態(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配置文件,指定訪問(wèn)位置并添加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ù),訪問(wèn)測(cè)試
systemctl daemon- reload systemctl restart nginx 瀏覽器訪問(wèn)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 長(zhǎng)連接keep_alive的具體使用
本文主要介紹了Nginx 長(zhǎng)連接keep_alive的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-05-05Nginx + php 搭建 超性能 WEB 服務(wù)器
Nginx ("engine x") 是一個(gè)高性能的 HTTP 和反向代理服務(wù)器,也是一個(gè) IMAP/POP3/SMTP 代理服務(wù)器。2010-03-03Debian下搭建Nginx和Tomcat服務(wù)器實(shí)現(xiàn)負(fù)載均衡的方案
這篇文章主要介紹了Debian下搭建Nginx和Tomcat服務(wù)器實(shí)現(xiàn)負(fù)載均衡的方案,其主要思想依然是動(dòng)靜分離并且以Nginx來(lái)進(jìn)行反向代理這樣的路子,需要的朋友可以參考下2015-12-12