Nginx網(wǎng)站服務過程詳解
更新時間:2023年06月06日 10:50:42 作者:獅子跑了
Nginx是一款高性能、異步非阻塞工作模式、輕量級Web服務軟件,這篇文章主要介紹了Nginx網(wǎng)站服務的相關知識,需要的朋友可以參考下
一.關于Nginx的特點
- 一款高性能、異步非阻塞工作模式、輕量級Web服務軟件
- 穩(wěn)定性高
- 系統(tǒng)資源消耗低
- 對HTTP并發(fā)連接的處理能力高
- 單臺物理服務器可支持30000~50000個并發(fā)請求
二.編譯安裝nginx服務
1.關閉防火墻,將安裝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)建運行用戶、組(nginx服務程序默認以 nobody 身份運行,建議為其創(chuàng)建專門的用戶賬號,以便更準確地控制其訪問權(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)計
make && make install In -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ #讓系統(tǒng)識別nginx的操作命令
5.檢查、啟動、重啟、停止 nginx服務
啟動
nginx nginx -t #開啟nginx服務一些方法 /usr/local/nginx/sbin/nginx
停止
cat /usr/local/nginx/logs/nginx.pid #查看nginx的PID號的幾種方法 netstat -lntp | grep nginx ss -lntp | grep nginx ps aux | grep nginx
kill -3 <PID號 kill -s QUIT <PID號> killall -3 nginx killall -s QUIT nqinx
重載
kill -l <PID號> kill -s HUP <PID號> killall -1 nginx killall -s HUP nginx
日志分割,重新打開日志文件
kill -USR1 <PID號>
平滑升級
kill -USR2 <PID號>
新版本升級
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)服務
方法一
方法二
三.認識Nginx服務的主配置文件 nginx.conf
1.全局配置
vim /usr/local/nginx/conf/nginx.conf
#user nobody; #運行用戶,若編譯時未指定則默認為nobody worker_processes 1; #工作進程數(shù)量,一般設置為和cPu核數(shù)一樣;設置為auto,nginx將會自己獲取這個數(shù)值 #error_log logs/error.log; #錯誤曰志文件的位置 #pid logs/ nginx.pid; #PID 文件的位置 worker_rlinit_nofile 60000; #設置所有worker進程最大可以打開的文件數(shù),默認為1024
2.I/O 事件配置
use epoll; #使用epoll I/o模型,2.6及以上版本的系統(tǒng)內(nèi)核,建議使用epoll模型以提高性能 worker_connections 60000 ; #每個進程處理60000個連接 multi_accept on; #是否一次性將監(jiān)聽到的連接全接收進來,默認為off,關閉時一次接收一條連接 accept_mutex on; #默認為on,開啟時表示以串行方式接入新連接,否則將通報給所有worker。這可能會浪費資源并產(chǎn)生不可預計的后果,例如驚群問題
3.HTTP 配置
vim /usr/local/nginx/conf/nginx.conf
4.server塊:配置虛擬主機的相關參數(shù),一個http 塊中可以有多個server塊;
5.location塊:用于配置匹配的 uri;
6.upstream:配置后端服務器具體地址,負載均衡配置不可或缺的部分
四.訪問狀態(tài)統(tǒng)計配置
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.重啟服務,訪問測試
systemctl daemon- reload systemctl restart nginx 瀏覽器訪問http://192.168.247.131/status curl -s http://192.168.247.131/status
到此這篇關于Nginx網(wǎng)站服務的文章就介紹到這了,更多相關Nginx網(wǎng)站服務內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Debian下搭建Nginx和Tomcat服務器實現(xiàn)負載均衡的方案
這篇文章主要介紹了Debian下搭建Nginx和Tomcat服務器實現(xiàn)負載均衡的方案,其主要思想依然是動靜分離并且以Nginx來進行反向代理這樣的路子,需要的朋友可以參考下2015-12-12