目錄
引言:
一.nginx安裝
1.關閉防火墻
2.上傳安裝包指opt目錄下
3.安裝依賴包
4.創建運行用戶、組
5.編譯安裝
6.檢查、啟動、重啟、停止nginx服務
7.添加Nginx系統服務
? 二.組態檔介紹
1.全域配置
2.I/O事件配置
? 3.HTTP配置
三、訪問狀態統計配置
1.安裝目錄訪問權限認證工具
2. 修改 nginx.conf 組態檔,指定訪問位置并添加 stub_status 配置
總結:
引言:
在生產環境中相比Apache而言nginx,很多企業都是使用nginx,而我們作為運維工程師也必須將其掌握
一.nginx安裝
1.關閉防火墻
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
2.上傳安裝包指opt目錄下
cd /opt
rz -E
nginx-1.12.2.tar.gz
3.安裝依賴包
yum -y install pcre-devel zlib-devel gcc gcc-c++ make
4.創建運行用戶、組
useradd -M -s /sbin/nologin nginx
5.編譯安裝
cd /opt
tar zxvf nginx-1.12.0.tar.gz -C /opt/
cd nginx-1.12.0/
./configure \
--prefix=/usr/local/nginx \ #指定nginx的安裝路徑
--user=nginx \ #指定用戶名
--group=nginx \ #指定組名
--with-http_stub_status_module #啟用 http_stub_status_module 模塊以支持狀態統計
make && make install
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ #讓系統識別nginx的操作命令
6.檢查、啟動、重啟、停止nginx服務
nginx -t #檢查組態檔是否配置正確
nginx #啟動
cat /usr/local/nginx/logs/nginx.pid #先查看nginx的PID號
kill -3 <PID號>
kill -s QUIT <PID號> #停止
killall -3 nginx
killall -s QUIT nginx
kill -1 <PID號> #多載
kill -s HUP <PID號>
killall -1 nginx
killall -s HUP nginx #日志分隔,重新打開日志檔案
kill -USR1 <PID號> #平滑升級
kill -USR2 <PID號>
7.添加Nginx系統服務
vim /lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecrReload=/bin/kill -s HUP $MAINPID
ExecrStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
chmod 754 /lib/systemd/system/nginx.service #賦權,除了root以外的用戶都不能修改
systemctl start nginx.service
systemctl enable nginx.service

注:當這里啟動失敗時,需要先結束nginx行程后再重新啟動
killall -3 nginx
nginx
二.組態檔介紹
vim /usr/local/nginx/conf/nginx.conf
1.全域配置
#user nobody; #運行用戶,若編譯時未指定則默認為 nobody
worker_processes 1; #作業行程數量,可配置成服務器內核數 * 2
#error_log logs/error.log; #錯誤日志檔案的位置
#pid logs/nginx.pid; #PID 檔案的位置

2.I/O事件配置
events {
use epoll; #使用 epoll 模型,2.6及以上版本的系統內核,建議使用epoll模型以提高性能
worker_connections 4096; #每個行程處理 4096 個連接
}
#如提高每個行程的連接數還需執行“ulimit -n 65535”命令臨時修改本地每個行程可以同時打開的最大檔案數,
#在Linux平臺上,在進行高并發TCP連接處理時,最高的并發數量都要受到系統對用戶單一行程同時可打開檔案數量的限制(這是因為系統為每個TCP連接都要創建一個socket句柄,每個socket句柄同時也是一個檔案句柄),
#可使用ulimit -a命令查看系統允許當前用戶行程打開的檔案數限制
3.HTTP配置
http {
##檔案擴展名與檔案型別映射表
include mime.types;
##默認檔案型別
default_type application/octet-stream;
##日志格式設定
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
##訪問日志位置
#access_log logs/access.log main;
##支持檔案發送(下載)
sendfile on;
##此選項允許或禁止使用socke的TCP_CORK的選項(發送資料包前先快取資料),此選項僅在使用sendfile的時候使用
#tcp_nopush on;
##連接保持超時時間,單位是秒
#keepalive_timeout 0;
keepalive_timeout 65;
##gzip模塊設定,設定是否開啟gzip壓縮輸出
#gzip on;
##Web 服務的監聽配置
server {
##監聽地址及埠
listen 80;
##站點域名,可以有多個,用空格隔開
server_name www.lic.com;
##網頁的默認字符集
charset utf-8;
##根目錄配置
location / {
##網站根目錄的位置/usr/local/nginx/html
root html;
##默認首頁檔案名
index index.html index.htm;
}
##內部錯誤的反饋頁面
error_page 500 502 503 504 /50x.html;
##錯誤頁面配置
location = /50x.html {
root html;
}
}
}

使用 centOS自帶的火狐瀏覽器訪問,因為牽扯域名的問題,在外的瀏覽器使用該域名時無法訪問(該域名可能已被人購買)

三、訪問狀態統計配置
1.安裝目錄訪問權限認證工具


2. 修改 nginx.conf 組態檔,指定訪問位置并添加 stub_status 配置


systemctl restart nginx

總結:
- nginx是一款高性能,輕量級web服務軟體
- 它具有穩定性高、系統資源消耗低、對HTTP并發連接的處理能力高等優點
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/305923.html
標籤:其他
上一篇:C | 陣列的相關知識(一)
下一篇:org.springframework.http.converter.HttpMessageNotReadableException 解決方案
