最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx超詳細(xì)實(shí)戰(zhàn)詳解教程

 更新時(shí)間:2026年05月27日 09:40:10   作者:JAVA社區(qū)  
Nginx高性能實(shí)戰(zhàn)詳解,涵蓋靜態(tài)資源優(yōu)化、反向代理、負(fù)載均衡、SSL配置等多核心功能,助你構(gòu)建穩(wěn)定高效Web架構(gòu),本文介紹Nginx超詳細(xì)實(shí)戰(zhàn)詳解教程,感興趣的朋友一起看看吧

Java進(jìn)階全套教程(九)—— Nginx超詳細(xì)實(shí)戰(zhàn)詳解教程

一、Nginx核心概述

1.1 什么是Nginx

Nginx是一款高性能、輕量級(jí)、開源免費(fèi)的HTTP和反向代理服務(wù)器,同時(shí)兼具郵件代理服務(wù)器、通用TCP/UDP代理服務(wù)器功能。由俄羅斯工程師Igor Sysoev開發(fā),專為高并發(fā)、低資源消耗場(chǎng)景設(shè)計(jì),徹底解決了傳統(tǒng)Apache服務(wù)器高并發(fā)卡頓、內(nèi)存占用過高的痛點(diǎn)。

相較于傳統(tǒng)Web服務(wù)器,Nginx核心優(yōu)勢(shì)突出:內(nèi)存占用極低、毫秒級(jí)啟動(dòng)、支持?jǐn)?shù)萬(wàn)級(jí)并發(fā)連接,依托異步非阻塞、事件驅(qū)動(dòng)的核心運(yùn)行模型,成為互聯(lián)網(wǎng)企業(yè)Web服務(wù)、反向代理、負(fù)載均衡的首選中間件,廣泛應(yīng)用于電商、直播、門戶、微服務(wù)架構(gòu)等場(chǎng)景。

1.2 主流Web服務(wù)器對(duì)比

目前企業(yè)常用的Web服務(wù)器包含Apache、Tomcat、Nginx、IIS,四款服務(wù)器定位與適用場(chǎng)景差異顯著:

  • Apache:老牌開源服務(wù)器,基于同步阻塞模型,穩(wěn)定性極強(qiáng),但并發(fā)能力弱,資源開銷大,適合靜態(tài)網(wǎng)站、低并發(fā)傳統(tǒng)項(xiàng)目,現(xiàn)已逐步被Nginx替代。
  • Tomcat:Java專屬應(yīng)用服務(wù)器,支持JSP、Servlet運(yùn)行,主打動(dòng)態(tài)Java項(xiàng)目解析,并發(fā)性能一般,僅用于Java后端服務(wù)部署,不擅長(zhǎng)靜態(tài)資源處理。
  • IIS:微軟自帶服務(wù)器,適配Windows系統(tǒng),兼容性強(qiáng),多用于Windows平臺(tái).NET項(xiàng)目,跨平臺(tái)性差、性能較弱。
  • Nginx:跨平臺(tái)高性能服務(wù)器,兼顧靜態(tài)資源處理、反向代理、負(fù)載均衡,支持高并發(fā)、熱部署,無(wú)平臺(tái)限制,是目前企業(yè)主流首選。

1.3 Nginx核心運(yùn)行模型

Nginx核心采用異步非阻塞事件驅(qū)動(dòng)模型,這是其高并發(fā)能力的核心原理。區(qū)別于同步阻塞模型(一個(gè)請(qǐng)求占用一個(gè)線程,線程阻塞等待響應(yīng)),Nginx通過單個(gè)工作線程輪詢處理多個(gè)客戶端請(qǐng)求,無(wú)線程阻塞、無(wú)頻繁線程創(chuàng)建銷毀開銷。

在Linux系統(tǒng)中,Nginx默認(rèn)采用epoll高效事件池,能夠監(jiān)聽海量文件描述符,官方基準(zhǔn)測(cè)試可支撐5萬(wàn)+瞬時(shí)并發(fā)連接,生產(chǎn)環(huán)境穩(wěn)定承載2-4萬(wàn)并發(fā),且內(nèi)存占用僅為Apache的1/5左右。

二、Nginx四大核心應(yīng)用場(chǎng)景

2.1 靜態(tài)資源HTTP服務(wù)器

Nginx原生優(yōu)化了靜態(tài)資源(HTML、CSS、JS、圖片、視頻)的解析與傳輸能力,無(wú)需依賴后端程序,可獨(dú)立部署靜態(tài)網(wǎng)站。相較于Tomcat、Apache,Nginx對(duì)靜態(tài)文件的讀取、緩存、壓縮效率更高,響應(yīng)速度提升3-10倍。

適用場(chǎng)景:純靜態(tài)官網(wǎng)、資源托管服務(wù)器、前端項(xiàng)目打包部署(Vue/React靜態(tài)產(chǎn)物)。

2.2 反向代理(核心高頻場(chǎng)景)

反向代理是Nginx最核心、使用最廣泛的功能。客戶端僅訪問Nginx服務(wù)器,由Nginx代為轉(zhuǎn)發(fā)請(qǐng)求至后端真實(shí)業(yè)務(wù)服務(wù)器,處理完成后再由Nginx將結(jié)果返回客戶端。

核心價(jià)值:隱藏后端真實(shí)服務(wù)器IP與架構(gòu)、抵御網(wǎng)絡(luò)攻擊、統(tǒng)一入口管理請(qǐng)求、實(shí)現(xiàn)請(qǐng)求統(tǒng)一攔截與處理,保障后端服務(wù)安全。

正向代理與反向代理核心區(qū)別:正向代理代理客戶端(如VPN),反向代理代理服務(wù)端(Nginx核心場(chǎng)景)。

2.3 負(fù)載均衡

當(dāng)后端單臺(tái)服務(wù)器無(wú)法承載高并發(fā)請(qǐng)求時(shí),可部署多臺(tái)業(yè)務(wù)服務(wù)器集群,通過Nginx負(fù)載均衡策略,將客戶端請(qǐng)求均勻分發(fā)至集群節(jié)點(diǎn),避免單節(jié)點(diǎn)壓力過載。

核心價(jià)值:解決單機(jī)并發(fā)瓶頸、實(shí)現(xiàn)服務(wù)水平擴(kuò)容、通過節(jié)點(diǎn)故障自動(dòng)剔除實(shí)現(xiàn)服務(wù)高可用,提升項(xiàng)目整體吞吐量與穩(wěn)定性。

2.4 動(dòng)靜分離

動(dòng)靜分離是Web性能優(yōu)化的核心方案,核心思路是拆分動(dòng)態(tài)資源與靜態(tài)資源請(qǐng)求:Nginx直接處理靜態(tài)資源請(qǐng)求(圖片、樣式、腳本),動(dòng)態(tài)請(qǐng)求(JSP、接口請(qǐng)求)轉(zhuǎn)發(fā)至Tomcat、SpringBoot等后端服務(wù)。

核心價(jià)值:減輕后端業(yè)務(wù)服務(wù)器壓力、靜態(tài)資源可配置緩存與壓縮、大幅提升頁(yè)面加載速度,是企業(yè)Web項(xiàng)目性能優(yōu)化的標(biāo)配方案。

三、Nginx選型與技術(shù)優(yōu)勢(shì)

3.1 技術(shù)選型背景

傳統(tǒng)單機(jī)Tomcat架構(gòu)存在嚴(yán)重性能瓶頸:Tomcat默認(rèn)配置僅支持150左右并發(fā)連接,即便優(yōu)化硬件與JVM參數(shù),并發(fā)上限也難以突破1000。在互聯(lián)網(wǎng)高并發(fā)場(chǎng)景下,單機(jī)架構(gòu)極易出現(xiàn)請(qǐng)求超時(shí)、服務(wù)宕機(jī)問題,因此必須引入Nginx作為前置網(wǎng)關(guān),實(shí)現(xiàn)請(qǐng)求分流與性能優(yōu)化。

3.2 Nginx核心優(yōu)勢(shì)(企業(yè)選型核心原因)

  • 高并發(fā)高性能:基于epoll事件模型,支持?jǐn)?shù)萬(wàn)級(jí)并發(fā),請(qǐng)求處理效率遠(yuǎn)超傳統(tǒng)服務(wù)器。
  • 極低資源消耗:?jiǎn)?dòng)后常駐內(nèi)存極小,千級(jí)并發(fā)場(chǎng)景下內(nèi)存占用不足10M,CPU利用率極低。
  • 開源免費(fèi)商用:完全開源,無(wú)版權(quán)費(fèi)用,對(duì)比F5、NetScaler等十萬(wàn)級(jí)硬件負(fù)載設(shè)備,大幅降低企業(yè)成本。
  • 智能健康檢查:自動(dòng)檢測(cè)后端集群節(jié)點(diǎn)狀態(tài),宕機(jī)節(jié)點(diǎn)自動(dòng)剔除,恢復(fù)后自動(dòng)重新納入集群,不影響前端訪問。
  • 帶寬優(yōu)化:原生支持Gzip壓縮、資源緩存,減少網(wǎng)絡(luò)傳輸數(shù)據(jù)量,節(jié)省服務(wù)器帶寬資源。
  • 高穩(wěn)定性:反向代理與負(fù)載均衡場(chǎng)景下,宕機(jī)概率極低,可常年不間斷運(yùn)行。
  • 熱部署熱更新:支持不停機(jī)加載配置、升級(jí)版本,實(shí)現(xiàn)業(yè)務(wù)零中斷維護(hù)。

四、Nginx環(huán)境準(zhǔn)備與依賴安裝

4.1 基礎(chǔ)環(huán)境要求

本次實(shí)戰(zhàn)基于CentOS 7.9 X64系統(tǒng),適配所有CentOS7系列版本,同時(shí)兼容主流Linux發(fā)行版(Ubuntu、Debian)。安裝前需完成四項(xiàng)環(huán)境校驗(yàn),規(guī)避安裝報(bào)錯(cuò):

  • 網(wǎng)絡(luò)連通性:服務(wù)器可正常訪問外網(wǎng),用于下載依賴與Nginx源碼
  • YUM源可用:配置官方Y(jié)UM源或阿里云鏡像源,保證依賴安裝正常
  • 防火墻策略:關(guān)閉防火墻或放行80、443、自定義業(yè)務(wù)端口
  • SELinux狀態(tài):關(guān)閉SELinux安全限制,避免權(quán)限攔截

4.2 環(huán)境校驗(yàn)實(shí)操命令

# 1. 校驗(yàn)網(wǎng)絡(luò)連通性
ping -c 4 www.baidu.com
# 2. 校驗(yàn)YUM可用性
yum clean all && yum makecache
# 3. 關(guān)閉防火墻(臨時(shí)+永久)
systemctl stop firewalld
systemctl disable firewalld
# 4. 關(guān)閉SELinux(臨時(shí)+永久)
setenforce 0
sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

4.3 核心依賴安裝

Nginx編譯安裝需依賴四大核心庫(kù),缺一不可,所有依賴可通過YUM一鍵安裝:

  • gcc/gcc-c++:C語(yǔ)言編譯環(huán)境,用于編譯Nginx源碼
  • pcre/pcre-devel:正則表達(dá)式庫(kù),支持Nginx rewrite規(guī)則解析
  • zlib/zlib-devel:壓縮庫(kù),支撐Gzip壓縮功能實(shí)現(xiàn)
  • openssl/openssl-devel:加密庫(kù),支持HTTPS、SSL證書配置
# 一鍵安裝所有編譯依賴
yum -y install gcc gcc-c++ make automake pcre pcre-devel zlib zlib-devel openssl openssl-devel

五、Nginx源碼編譯安裝(企業(yè)生產(chǎn)標(biāo)準(zhǔn))

5.1 版本選型規(guī)范

Nginx官網(wǎng)提供三類版本,生產(chǎn)與開發(fā)環(huán)境嚴(yán)格區(qū)分:

  • Mainline Version(主線版):最新功能版,未經(jīng)過充分生產(chǎn)測(cè)試,禁止生產(chǎn)使用,僅用于功能測(cè)試
  • Stable Version(穩(wěn)定版):經(jīng)過大規(guī)模生產(chǎn)驗(yàn)證,企業(yè)生產(chǎn)首選,本次選用1.24.0穩(wěn)定版
  • Legacy Version(舊版):老舊維護(hù)版本,僅用于老舊項(xiàng)目兼容

5.2 源碼下載與目錄規(guī)劃

企業(yè)規(guī)范:所有源碼統(tǒng)一存放至/opt/apps目錄,安裝程序部署至/usr/local/nginx/目錄,統(tǒng)一服務(wù)器文件規(guī)范。

# 1. 創(chuàng)建源碼存放目錄
mkdir -p /opt/apps
cd /opt/apps
# 2. 下載Nginx1.24.0穩(wěn)定版源碼
wget http://nginx.org/download/nginx-1.24.0.tar.gz
# 3. 解壓源碼包
tar -zxvf nginx-1.24.0.tar.gz
cd nginx-1.24.0

5.3 編譯參數(shù)配置(完整版企業(yè)參數(shù))

編譯參數(shù)用于指定Nginx安裝路徑、日志路徑、模塊功能、運(yùn)行用戶等核心配置,以下為生產(chǎn)環(huán)境通用完整參數(shù),包含SSL、Gzip、靜態(tài)資源優(yōu)化等必備模塊:

# 創(chuàng)建臨時(shí)緩存目錄(必須手動(dòng)創(chuàng)建,否則啟動(dòng)報(bào)錯(cuò))
mkdir -p /var/temp/nginx/{client,proxy,fastcgi,uwsgi,scgi}
# 完整編譯配置命令
./configure \
--prefix=/usr/local/nginx \
--sbin-path=/usr/local/nginx/sbin/nginx \
--conf-path=/usr/local/nginx/conf/nginx.conf \
--pid-path=/usr/local/nginx/logs/nginx.pid \
--error-log-path=/usr/local/nginx/logs/error.log \
--http-log-path=/usr/local/nginx/logs/access.log \
--lock-path=/usr/local/nginx/logs/nginx.lock \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--user=nginx \
--group=nginx \
--with-http_ssl_module \
--with-http_gzip_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-http_realip_module

5.4 編譯與安裝

configure執(zhí)行無(wú)報(bào)錯(cuò)后,執(zhí)行編譯安裝命令,僅首次安裝執(zhí)行make install,后續(xù)新增模塊僅需make編譯,無(wú)需重裝。

# 編譯+安裝(分步執(zhí)行,便于排查報(bào)錯(cuò))
make
make install
# 創(chuàng)建Nginx運(yùn)行用戶與用戶組
useradd -s /sbin/nologin nginx

六、Nginx目錄結(jié)構(gòu)詳解

安裝完成后,Nginx主目錄為/usr/local/nginx,核心四大目錄各司其職,是運(yùn)維與配置的核心重點(diǎn):

6.1 conf 配置目錄(核心目錄)

存放所有Nginx配置文件,nginx.conf為主配置文件,所有服務(wù)規(guī)則、代理、負(fù)載均衡、緩存策略均在此配置,其余為模板配置文件。

6.2 html 站點(diǎn)目錄

默認(rèn)靜態(tài)資源根目錄,包含兩個(gè)默認(rèn)頁(yè)面:index.html(默認(rèn)訪問首頁(yè))、50x.html(服務(wù)器異常報(bào)錯(cuò)頁(yè)面),可自定義靜態(tài)頁(yè)面替換。

6.3 logs 日志目錄

存放運(yùn)行日志與進(jìn)程文件,啟動(dòng)Nginx后自動(dòng)生成:access.log(正常訪問日志)、error.log(錯(cuò)誤日志)、nginx.pid(主進(jìn)程ID文件),是排查線上問題的核心依據(jù)。

6.4 sbin 命令目錄

存放Nginx可執(zhí)行程序,所有啟停、重載、校驗(yàn)命令均基于該目錄下的nginx程序執(zhí)行。

七、Docker快速部署Nginx(容器化方案)

Docker部署無(wú)需編譯環(huán)境,一鍵部署、快速擴(kuò)容,適合測(cè)試環(huán)境與容器化生產(chǎn)環(huán)境,支持目錄掛載、配置持久化。

7.1 基礎(chǔ)容器部署

# 拉取官方最新穩(wěn)定鏡像
docker pull nginx:stable
# 啟動(dòng)基礎(chǔ)Nginx容器
docker run -d \
--name nginx-base \
--rm \
-p 8080:80 \
nginx:stable

7.2 持久化掛載部署(生產(chǎn)可用)

通過掛載本地目錄,實(shí)現(xiàn)配置文件、靜態(tài)資源、日志持久化,刪除容器不丟失數(shù)據(jù):

# 創(chuàng)建本地持久化目錄
mkdir -p /docker/nginx/{conf,html,logs}
# 臨時(shí)啟動(dòng)容器,拷貝默認(rèn)配置文件
docker run -d --name nginx-tmp nginx:stable
docker cp nginx-tmp:/etc/nginx/nginx.conf /docker/nginx/conf/
docker cp nginx-tmp:/etc/nginx/conf.d /docker/nginx/conf/
docker stop nginx-tmp && docker rm nginx-tmp
# 啟動(dòng)持久化Nginx容器
docker run -d \
--name nginx-prod \
-p 80:80 \
-p 443:443 \
-v /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /docker/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /docker/nginx/html:/usr/share/nginx/html \
-v /docker/nginx/logs:/var/log/nginx \
--restart always \
nginx:stable

八、Nginx服務(wù)啟停與核心命令

8.1 核心命令參數(shù)

# 查看Nginx版本
/usr/local/nginx/sbin/nginx -v
# 查看詳細(xì)版本與編譯參數(shù)
/usr/local/nginx/sbin/nginx -V
# 校驗(yàn)配置文件語(yǔ)法(核心!修改配置后必執(zhí)行)
/usr/local/nginx/sbin/nginx -t
# 靜默校驗(yàn)配置(僅輸出錯(cuò)誤信息)
/usr/local/nginx/sbin/nginx -q

8.2 啟停與重載操作

Nginx支持熱重載,無(wú)需停機(jī)即可更新配置,保障業(yè)務(wù)零中斷:

# 啟動(dòng)Nginx
/usr/local/nginx/sbin/nginx
# 快速停止(強(qiáng)制終止所有請(qǐng)求,不推薦生產(chǎn)使用)
/usr/local/nginx/sbin/nginx -s stop
# 平緩?fù)V梗ㄌ幚硗戤?dāng)前請(qǐng)求后關(guān)閉,生產(chǎn)推薦)
/usr/local/nginx/sbin/nginx -s quit
# 熱重載配置(修改配置后必用,零停機(jī)更新)
/usr/local/nginx/sbin/nginx -s reload
# 重啟日志文件
/usr/local/nginx/sbin/nginx -s reopen

九、Nginx核心配置塊詳解

Nginx主配置文件nginx.conf分為四大核心塊,優(yōu)先級(jí)與作用域逐層遞減,是所有功能配置的基礎(chǔ):全局塊、events塊、http塊、server塊、location塊。

9.1 全局塊(頂級(jí)作用域)

作用于整個(gè)Nginx服務(wù),配置全局運(yùn)行參數(shù),核心指令如下:

# 定義運(yùn)行Nginx的用戶與組
user nginx nginx;
# 工作進(jìn)程數(shù),建議與CPU核心數(shù)一致(auto自動(dòng)適配)
worker_processes auto;
# 錯(cuò)誤日志路徑與日志級(jí)別(debug/info/warn/error/crit)
error_log /usr/local/nginx/logs/error.log error;
# 主進(jìn)程PID文件路徑
pid /usr/local/nginx/logs/nginx.pid;
# 最大文件打開數(shù)
worker_rlimit_nofile 65535;

9.2 events塊(事件驅(qū)動(dòng)配置)

配置Nginx工作模式與連接上限,直接決定并發(fā)能力:

events {
    # 啟用Linux高效epoll事件模型
    use epoll;
    # 單個(gè)工作進(jìn)程最大連接數(shù)
    worker_connections 10240;
    # 開啟多進(jìn)程accept鎖
    accept_mutex on;
    # 批量接收新連接
    multi_accept on;
}

并發(fā)計(jì)算公式:最大并發(fā)數(shù) = worker_processes * worker_connections,反向代理場(chǎng)景需除以4(經(jīng)驗(yàn)值)。

9.3 HTTP塊(全局Web配置)

配置HTTP協(xié)議通用參數(shù)、日志格式、壓縮、超時(shí)、MIME類型等全局Web規(guī)則:

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 /usr/local/nginx/logs/access.log main;
    # 開啟零拷貝傳輸
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    # 連接超時(shí)時(shí)間
    keepalive_timeout 120s 100s;
    # 請(qǐng)求緩沖區(qū)配置
    client_header_buffer_size 16k;
    large_client_header_buffers 4 64k;
    # 開啟Gzip全局壓縮
    gzip on;
    gzip_min_length 1k;
    gzip_buffers 4 16k;
    gzip_http_version 1.1;
    gzip_comp_level 6;
    gzip_types text/plain text/css text/js application/json application/javascript;
    gzip_disable "MSIE [1-6]\.";
}

9.4 Server虛擬主機(jī)塊

一個(gè)server塊對(duì)應(yīng)一個(gè)虛擬站點(diǎn),支持多站點(diǎn)共存,核心配置監(jiān)聽端口、域名、站點(diǎn)根目錄:

server {
    listen 80;
    server_name www.demo.com demo.com;
    root /usr/local/nginx/html/demo;
    index index.html index.htm index.php;
    access_log /usr/local/nginx/logs/demo-access.log main;
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root html;
    }
}

9.5 Location路由匹配塊

Nginx核心路由規(guī)則,用于匹配客戶端請(qǐng)求URL,支持多種匹配模式,優(yōu)先級(jí)從高到低:

精準(zhǔn)匹配(=) > 前綴鎖定(^~) > 大小寫正則(~) > 忽略大小寫正則(~*) > 通用匹配(/)

# 精準(zhǔn)匹配根路徑
location = / {
    index index.html;
}
# 鎖定靜態(tài)資源前綴,停止后續(xù)匹配
location ^~ /static/ {
    root /usr/local/nginx/html;
    expires 30d;
}
# 正則匹配圖片資源(區(qū)分大小寫)
location ~ \.(jpg|png|gif|ico)$ {
    expires 7d;
    add_header Cache-Control "public";
}
# 通用匹配所有請(qǐng)求
location / {
    proxy_pass http://127.0.0.1:8080;
}

十、三大虛擬主機(jī)實(shí)戰(zhàn)配置

10.1 基于IP的虛擬主機(jī)

單網(wǎng)卡綁定多IP,不同IP訪問不同站點(diǎn),適合內(nèi)網(wǎng)業(yè)務(wù)隔離場(chǎng)景:

# 1. 網(wǎng)卡配置多IP(CentOS7)
vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO="static"
IPADDR=192.168.66.100
IPADDR1=192.168.66.101
NETMASK=255.255.255.0
GATEWAY=192.168.66.2
# 重啟網(wǎng)絡(luò)
systemctl restart network
# 2. Nginx虛擬主機(jī)配置
server {
    listen 80;
    server_name 192.168.66.100;
    root /usr/local/nginx/html/ip100;
    index index.html;
}
server {
    listen 80;
    server_name 192.168.66.101;
    root /usr/local/nginx/html/ip101;
    index index.html;
}

10.2 基于域名的虛擬主機(jī)(生產(chǎn)主流)

同一IP、同一端口,通過不同域名區(qū)分站點(diǎn),適用于多官網(wǎng)、多業(yè)務(wù)部署:

# hosts域名映射(本地測(cè)試)
192.168.66.100 www.frontend.com
192.168.66.100 www.backend.com
# 前端站點(diǎn)配置
server {
    listen 80;
    server_name www.frontend.com;
    root /usr/local/nginx/html/frontend;
    index index.html;
}
# 后端站點(diǎn)配置
server {
    listen 80;
    server_name www.backend.com;
    root /usr/local/nginx/html/backend;
    index index.html;
}

10.3 基于端口的虛擬主機(jī)

同一IP、不同端口部署不同服務(wù),適合內(nèi)部測(cè)試系統(tǒng)、后臺(tái)管理系統(tǒng):

server {
    listen 8088;
    server_name 192.168.66.100;
    root /usr/local/nginx/html/test8088;
    index index.html;
}
server {
    listen 9099;
    server_name 192.168.66.100;
    root /usr/local/nginx/html/test9099;
    index index.html;
}

十一、Nginx核心模塊實(shí)戰(zhàn)

11.1 Rewrite地址重寫模塊

通過正則匹配實(shí)現(xiàn)URL重定向、域名跳轉(zhuǎn)、地址標(biāo)準(zhǔn)化,支持301永久重定向、302臨時(shí)重定向:

# 1. 舊域名永久跳轉(zhuǎn)新域名
server {
    listen 80;
    server_name old.com www.old.com;
    rewrite ^/(.*)$ https://www.new.com/$1 permanent;
}
# 2. 偽靜態(tài)配置(動(dòng)態(tài)URL轉(zhuǎn)靜態(tài)URL)
location / {
    rewrite ^/article-(\d+)\.html$ /article.php?id=$1 last;
}
# 3. 目錄跳轉(zhuǎn)
location /admin {
    rewrite ^/admin$ /admin/index.html redirect;
}

11.2 If條件判斷模塊

支持基于IP、請(qǐng)求方式、瀏覽器標(biāo)識(shí)、參數(shù)的條件攔截與定制化配置:

# 禁止POST請(qǐng)求訪問靜態(tài)資源
location ~ \.(html|js|css)$ {
    if ($request_method = POST) {
        return 405;
    }
}
# 攔截指定IP訪問
if ($remote_addr = "192.168.66.200") {
    return 403;
}
# 攔截爬蟲訪問
if ($http_user_agent ~* (spider|crawler)) {
    return 403;
}

11.3 瀏覽器緩存優(yōu)化

通過expires與Cache-Control配置靜態(tài)資源緩存,減少重復(fù)請(qǐng)求,提升訪問速度:

server {
    listen 80;
    server_name www.demo.com;
    # 圖片、視頻緩存30天
    location ~ \.(jpg|png|gif|mp4|ico)$ {
        expires 30d;
        add_header Cache-Control "max-age=2592000, public";
    }
    # JS、CSS緩存7天
    location ~ \.(js|css)$ {
        expires 7d;
        add_header Cache-Control "max-age=604800, public";
    }
    # HTML禁止緩存,保證實(shí)時(shí)更新
    location ~ \.(html|htm)$ {
        add_header Cache-Control "no-cache, no-store, must-revalidate";
        add_header Pragma "no-cache";
        expires -1;
    }
}

11.4 防盜鏈配置

基于Referer請(qǐng)求頭攔截非法盜鏈,保護(hù)服務(wù)器資源,防止流量被盜用:

location ~ \.(jpg|png|gif|js|css)$ {
    # 允許空Referer、本機(jī)、合法域名訪問
    valid_referers none blocked www.demo.com demo.com 192.168.66.100;
    # 非法請(qǐng)求返回403
    if ($invalid_referer) {
        return 403;
    }
}

11.5 跨域問題解決

前端跨域請(qǐng)求報(bào)錯(cuò)核心解決方案,配置全局跨域響應(yīng)頭:

location / {
    add_header Access-Control-Allow-Origin *;
    add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;
    add_header Access-Control-Allow-Headers DNT,X-Requested-With,Content-Type,Authorization;
    # 處理預(yù)檢請(qǐng)求
    if ($request_method = OPTIONS) {
        return 204;
    }
    proxy_pass http://127.0.0.1:8080;
}

十二、Nginx高階企業(yè)實(shí)戰(zhàn)場(chǎng)景

12.1 動(dòng)靜分離實(shí)戰(zhàn)

分離靜態(tài)、動(dòng)態(tài)請(qǐng)求,Nginx處理靜態(tài)資源,Tomcat處理動(dòng)態(tài)接口,極致優(yōu)化性能:

upstream tomcat_cluster {
    server 192.168.66.102:8080 weight=5;
    server 192.168.66.103:8080 weight=5;
}
server {
    listen 80;
    server_name www.demo.com;
    # 靜態(tài)資源直接由Nginx處理
    location ~ \.(html|js|css|jpg|png|gif|ico)$ {
        root /usr/local/nginx/static;
        expires 10d;
    }
    # 動(dòng)態(tài)請(qǐng)求轉(zhuǎn)發(fā)至Tomcat集群
    location ~ \.(jsp|do|action)$ {
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://tomcat_cluster;
    }
    # 通用接口請(qǐng)求轉(zhuǎn)發(fā)
    location /api/ {
        proxy_pass http://tomcat_cluster;
    }
}

12.2 負(fù)載均衡完整配置

支持權(quán)重、IP哈希、故障轉(zhuǎn)移,實(shí)現(xiàn)后端服務(wù)高可用:

http {
    # 定義后端服務(wù)集群
    upstream backend_cluster {
        # 權(quán)重配置,weight越大分發(fā)請(qǐng)求越多
        server 192.168.66.102:8080 weight=3 max_fails=3 fail_timeout=10s;
        server 192.168.66.103:8080 weight=2 max_fails=3 fail_timeout=10s;
        # 備用節(jié)點(diǎn),主節(jié)點(diǎn)全部故障時(shí)啟用
        server 192.168.66.104:8080 backup;
    }
    server {
        listen 80;
        server_name www.demo.com;
        location / {
            # 轉(zhuǎn)發(fā)請(qǐng)求至集群
            proxy_pass http://backend_cluster;
            # 保留真實(shí)客戶端信息
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            # 超時(shí)配置
            proxy_connect_timeout 5s;
            proxy_send_timeout 10s;
            proxy_read_timeout 10s;
            # 故障轉(zhuǎn)移
            proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
        }
    }
}

12.3 限流防護(hù)實(shí)戰(zhàn)

基于漏桶算法實(shí)現(xiàn)請(qǐng)求速率限流、并發(fā)連接限流,防護(hù)突發(fā)流量與CC攻擊:

http {
    # 速率限流:?jiǎn)蜪P每秒1次請(qǐng)求,緩沖區(qū)5個(gè)
    limit_req_zone $binary_remote_addr zone=req_limit:10m rate=1r/s;
    # 并發(fā)限流:?jiǎn)蜪P最大10個(gè)并發(fā)連接
    limit_conn_zone $binary_remote_addr zone=conn_limit:10m;
    server {
        listen 80;
        server_name www.demo.com;
        location / {
            # 啟用速率限流
            limit_req zone=req_limit burst=5 nodelay;
            # 啟用并發(fā)限流
            limit_conn conn_limit 10;
            proxy_pass http://backend_cluster;
        }
    }
}

12.4 緩存加速實(shí)戰(zhàn)

配置Nginx代理緩存,緩存后端接口響應(yīng)數(shù)據(jù),大幅提升重復(fù)請(qǐng)求響應(yīng)速度:

http {
    # 緩存路徑、層級(jí)、內(nèi)存空間、過期時(shí)間
    proxy_cache_path /var/nginx/cache levels=1:2 keys_zone=api_cache:100m inactive=7d max_size=5G;
    server {
        listen 80;
        server_name www.demo.com;
        location /api/data/ {
            # 啟用緩存
            proxy_cache api_cache;
            # 200/304狀態(tài)碼緩存10分鐘
            proxy_cache_valid 200 304 10m;
            # 自定義緩存key
            proxy_cache_key "$host$request_uri$args";
            # 緩存狀態(tài)響應(yīng)頭
            add_header Nginx-Cache "$upstream_cache_status";
            proxy_pass http://backend_cluster;
        }
        # 手動(dòng)清理緩存接口(僅本機(jī)訪問)
        location /purge/cache {
            allow 127.0.0.1;
            deny all;
            proxy_cache_purge api_cache $host$request_uri$args;
        }
    }
}

十三、Nginx高可用架構(gòu)(Nginx+Keepalived)

13.1 架構(gòu)原理

單臺(tái)Nginx存在單點(diǎn)故障風(fēng)險(xiǎn),通過Keepalived實(shí)現(xiàn)雙機(jī)熱備:主節(jié)點(diǎn)正常工作,備節(jié)點(diǎn)待命,主節(jié)點(diǎn)故障時(shí),虛擬VIP自動(dòng)漂移至備節(jié)點(diǎn),實(shí)現(xiàn)服務(wù)無(wú)感知切換。

13.2 環(huán)境規(guī)劃

  • 主Nginx:192.168.66.100(MASTER)
  • 備Nginx:192.168.66.101(BACKUP)
  • 虛擬VIP:192.168.66.99

13.3 Keepalived核心配置

主節(jié)點(diǎn)配置 /etc/keepalived/keepalived.conf:

! Configuration File for keepalived
global_defs {
    router_id nginx_master
}
# Nginx狀態(tài)檢測(cè)腳本
vrrp_script chk_nginx {
    script "/etc/keepalived/nginx_check.sh"
    interval 2
    weight -20
}
vrrp_instance VI_1 {
    state MASTER
    interface ens33
    virtual_router_id 120
    priority 100
    advert_int 1
    nopreempt
    authentication {
        auth_type PASS
        auth_pass 123456
    }
    track_script {
        chk_nginx
    }
    virtual_ipaddress {
        192.168.66.99/24
    }
}

備節(jié)點(diǎn)配置僅修改 state BACKUP、priority 80,其余參數(shù)與主節(jié)點(diǎn)一致。

13.4 健康檢測(cè)腳本

創(chuàng)建 /etc/keepalived/nginx_check.sh,實(shí)現(xiàn)Nginx宕機(jī)自動(dòng)切換:

#!/bin/bash
# 統(tǒng)計(jì)Nginx進(jìn)程數(shù)
NGINX_NUM=$(ps -C nginx --no-header | wc -l)
# 無(wú)進(jìn)程則重啟Nginx
if [ $NGINX_NUM -eq 0 ];then
    /usr/local/nginx/sbin/nginx
    sleep 2
    # 重啟失敗則關(guān)閉keepalived,觸發(fā)VIP漂移
    if [ $(ps -C nginx --no-header | wc -l) -eq 0 ];then
        systemctl stop keepalived
    fi
fi

腳本授權(quán):chmod 755 /etc/keepalived/nginx_check.sh

十四、Nginx HTTPS證書企業(yè)級(jí)配置實(shí)戰(zhàn)

14.1 HTTPS核心原理與前置準(zhǔn)備

HTTPS基于SSL/TLS協(xié)議對(duì)HTTP數(shù)據(jù)加密傳輸,端口默認(rèn)443,可解決明文傳輸、數(shù)據(jù)篡改、中間人劫持問題,是網(wǎng)站合規(guī)、瀏覽器安全訪問的必備配置。Nginx實(shí)現(xiàn)HTTPS依賴編譯時(shí)的openssl模塊,前文編譯流程已默認(rèn)集成,無(wú)需重新編譯。

證書類型分為兩類:免費(fèi)域名證書(Let’s Encrypt、阿里云免費(fèi)證書,適合中小企業(yè)官網(wǎng))、付費(fèi)OV/EV證書(適合金融、電商等高危場(chǎng)景),證書文件核心包含.pem/.crt公鑰文件、.key私鑰文件。

前置準(zhǔn)備:域名已完成備案、服務(wù)器防火墻放行443端口、證書文件上傳至服務(wù)器固定目錄。

14.2 證書目錄規(guī)范與文件部署

企業(yè)統(tǒng)一規(guī)范:在Nginx配置目錄下創(chuàng)建ssl專屬目錄,統(tǒng)一存放所有域名證書,便于管理和續(xù)期:

# 創(chuàng)建證書統(tǒng)一存放目錄
mkdir -p /usr/local/nginx/conf/ssl
# 上傳證書文件(示例:域名demo.com)
# 上傳后目錄包含:demo.com.pem(公鑰)、demo.com.key(私鑰)
# 授權(quán)證書目錄權(quán)限,防止權(quán)限過高報(bào)錯(cuò)
chmod 600 /usr/local/nginx/conf/ssl/*
chown nginx:nginx /usr/local/nginx/conf/ssl/*

14.3 完整HTTPS站點(diǎn)配置(生產(chǎn)最優(yōu))

配置包含SSL加密參數(shù)優(yōu)化、兼容主流瀏覽器、開啟會(huì)話復(fù)用、強(qiáng)制HTTPS跳轉(zhuǎn),適配生產(chǎn)環(huán)境所有場(chǎng)景:

# 80端口強(qiáng)制跳轉(zhuǎn)HTTPS
server {
    listen 80;
    server_name www.demo.com demo.com;
    # 301永久重定向,SEO友好
    return 301 https://$host$request_uri;
}
# 443 HTTPS核心配置
server {
    listen 443 ssl;
    server_name www.demo.com demo.com;
    root /usr/local/nginx/html/demo;
    index index.html index.htm;
    # 配置證書公鑰、私鑰路徑
    ssl_certificate /usr/local/nginx/conf/ssl/demo.com.pem;
    ssl_certificate_key /usr/local/nginx/conf/ssl/demo.com.key;
    # SSL性能與安全優(yōu)化參數(shù)(生產(chǎn)必配)
    ssl_protocols TLSv1.2 TLSv1.3; # 禁用老舊不安全協(xié)議
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on; # 優(yōu)先使用服務(wù)器加密套件
    ssl_session_cache shared:SSL:10m; # 開啟SSL會(huì)話緩存
    ssl_session_timeout 10m; # 會(huì)話緩存過期時(shí)間
    ssl_buffer_size 4k; # 優(yōu)化傳輸緩沖區(qū)大小
    # 瀏覽器HTTPS安全強(qiáng)化
    add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
    add_header X-Frame-Options DENY; # 防止頁(yè)面被嵌套劫持
    add_header X-Content-Type-Options nosniff;
    # 日志配置
    access_log /usr/local/nginx/logs/https-demo-access.log main;
    error_log /usr/local/nginx/logs/https-demo-error.log error;
    # 靜態(tài)資源緩存、反向代理等業(yè)務(wù)配置沿用原有規(guī)則
    location ~ \.(jpg|png|gif|js|css)$ {
        expires 10d;
    }
}

14.4 多域名HTTPS共存配置

單服務(wù)器多域名獨(dú)立HTTPS證書部署,互不沖突,適配多站點(diǎn)業(yè)務(wù)場(chǎng)景:

# 站點(diǎn)1:www.frontend.com
server {
    listen 80;
    server_name www.frontend.com;
    return 301 https://$host$request_uri;
}
server {
    listen 443 ssl;
    server_name www.frontend.com;
    ssl_certificate /usr/local/nginx/conf/ssl/frontend.com.pem;
    ssl_certificate_key /usr/local/nginx/conf/ssl/frontend.com.key;
    # 通用SSL優(yōu)化參數(shù)省略,同上
}
# 站點(diǎn)2:www.backend.com
server {
    listen 80;
    server_name www.backend.com;
    return 301 https://$host$request_uri;
}
server {
    listen 443 ssl;
    server_name www.backend.com;
    ssl_certificate /usr/local/nginx/conf/ssl/backend.com.pem;
    ssl_certificate_key /usr/local/nginx/conf/ssl/backend.com.key;
    # 通用SSL優(yōu)化參數(shù)省略,同上
}

14.5 證書自動(dòng)續(xù)期方案(免費(fèi)證書必備)

Let’s Encrypt等免費(fèi)證書有效期僅90天,需配置定時(shí)任務(wù)自動(dòng)續(xù)期,避免證書過期導(dǎo)致網(wǎng)站無(wú)法訪問:

# 1. 安裝續(xù)期工具
yum install -y certbot
# 2. 手動(dòng)續(xù)期測(cè)試
certbot renew --dry-run
# 3. 配置定時(shí)任務(wù),每日凌晨2點(diǎn)自動(dòng)檢測(cè)續(xù)期
crontab -e
# 寫入以下內(nèi)容
0 2 * * * /usr/bin/certbot renew && /usr/local/nginx/sbin/nginx -s reload

十五、Nginx線上高頻報(bào)錯(cuò)排查方案

本節(jié)匯總生產(chǎn)環(huán)境最常見的Nginx報(bào)錯(cuò),包含報(bào)錯(cuò)現(xiàn)象、根因分析、完整解決辦法,覆蓋啟動(dòng)報(bào)錯(cuò)、訪問異常、HTTPS報(bào)錯(cuò)、代理轉(zhuǎn)發(fā)報(bào)錯(cuò)四大類場(chǎng)景。

15.1 啟動(dòng)/重載報(bào)錯(cuò)

報(bào)錯(cuò)1:nginx: [emerg] mkdir() “/var/temp/nginx/client” failed (2: No such file or directory)

報(bào)錯(cuò)原因:編譯配置中指定的臨時(shí)緩存目錄不存在,首次安裝后未手動(dòng)創(chuàng)建目錄。

解決方案:執(zhí)行命令批量創(chuàng)建所需臨時(shí)目錄,重新重載配置:

mkdir -p /var/temp/nginx/{client,proxy,fastcgi,uwsgi,scgi}
/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload

報(bào)錯(cuò)2:nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

報(bào)錯(cuò)原因:80端口被Nginx殘留進(jìn)程、Apache、httpd等服務(wù)占用,端口沖突。

解決方案:排查端口占用、終止殘留進(jìn)程:

# 查看80端口占用進(jìn)程
netstat -tulpn | grep 80
# 強(qiáng)制終止占用進(jìn)程
kill -9 進(jìn)程ID
# 關(guān)閉沖突服務(wù)
systemctl stop httpd && systemctl disable httpd
# 重啟Nginx
/usr/local/nginx/sbin/nginx

報(bào)錯(cuò)3:nginx: [emerg] user “nginx” does not exist

報(bào)錯(cuò)原因:配置文件中指定的nginx運(yùn)行用戶未創(chuàng)建。

解決方案:創(chuàng)建無(wú)登錄權(quán)限的系統(tǒng)用戶:

useradd -s /sbin/nologin nginx
/usr/local/nginx/sbin/nginx -s reload

15.2 HTTPS專屬報(bào)錯(cuò)

報(bào)錯(cuò)1:nginx: [emerg] SSL_CTX_use_certificate_file(…) failed (SSL: error:02001002:system library:fopen:No such file or directory)

報(bào)錯(cuò)原因:證書文件路徑錯(cuò)誤、文件缺失、文件名大小寫不匹配、證書目錄權(quán)限不足。

解決方案:核對(duì)配置文件證書路徑、檢查文件完整性、修正權(quán)限:

# 核對(duì)證書文件是否存在
ls /usr/local/nginx/conf/ssl/
# 修正目錄與文件權(quán)限
chmod 600 /usr/local/nginx/conf/ssl/*
chown nginx:nginx /usr/local/nginx/conf/ssl/*
# 重載配置
nginx -s reload

報(bào)錯(cuò)2:瀏覽器提示“您的連接不是私密連接”/證書已過期

報(bào)錯(cuò)原因:證書過期、域名不匹配、服務(wù)器系統(tǒng)時(shí)間錯(cuò)誤、證書鏈不完整。

解決方案:1. 核對(duì)證書有效期,過期則重新上傳新證書并重載;2. 確保配置域名與證書綁定域名一致;3. 同步服務(wù)器時(shí)間;4. 補(bǔ)充完整證書鏈文件。

# 同步系統(tǒng)時(shí)間
ntpdate time.aliyun.com

報(bào)錯(cuò)3:nginx: [emerg] unknown directive “ssl” in nginx.conf

報(bào)錯(cuò)原因:Nginx編譯時(shí)未添加--with-http_ssl_module模塊,不支持HTTPS功能。

解決方案:重新編譯Nginx,新增SSL模塊,保留原有配置:

復(fù)用前文5.3節(jié)完整編譯參數(shù),執(zhí)行make編譯,無(wú)需make install,編譯完成后替換二進(jìn)制文件即可。

15.3 訪問狀態(tài)異常報(bào)錯(cuò)

報(bào)錯(cuò)1:403 Forbidden 訪問禁止

常見原因:1. 站點(diǎn)目錄權(quán)限不足,nginx用戶無(wú)讀取權(quán)限;2. 目錄無(wú)默認(rèn)首頁(yè)文件;3. SELinux未關(guān)閉;4. 防盜鏈規(guī)則攔截。

解決方案:逐層排查修復(fù):

# 1. 關(guān)閉SELinux(永久生效)
sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config && setenforce 0
# 2. 修正站點(diǎn)目錄權(quán)限
chmod -R 755 /usr/local/nginx/html
chown -R nginx:nginx /usr/local/nginx/html
# 3. 檢查是否存在index.html默認(rèn)文件
# 

到此這篇關(guān)于Nginx超詳細(xì)實(shí)戰(zhàn)詳解教程的文章就介紹到這了,更多相關(guān)Nginx實(shí)戰(zhàn)詳解內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Nginx配置ssl支持https全過程(docker版)

    Nginx配置ssl支持https全過程(docker版)

    在Docker環(huán)境中配置Nginx使用SSL涉及準(zhǔn)備SSL證書和密鑰、編寫Nginx配置文件以及使用Docker運(yùn)行Nginx,首先,需獲取SSL證書和密鑰,可以是自簽名或由CA頒發(fā),編寫Nginx配置文件時(shí),確保正確引用證書和密鑰路徑,通過Docker命令或Docker Compose運(yùn)行Nginx容器
    2024-10-10
  • Nginx反向代理實(shí)現(xiàn)支持長(zhǎng)連接詳解

    Nginx反向代理實(shí)現(xiàn)支持長(zhǎng)連接詳解

    這篇文章主要給大家介紹了關(guān)于Nginx反向代理實(shí)現(xiàn)支持長(zhǎng)連接的相關(guān)資料,文字介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編一起來(lái)學(xué)習(xí)學(xué)習(xí)吧。
    2017-06-06
  • nginx轉(zhuǎn)發(fā)內(nèi)網(wǎng)圖片的代碼示例

    nginx轉(zhuǎn)發(fā)內(nèi)網(wǎng)圖片的代碼示例

    這篇文章主要給大家介紹了nginx轉(zhuǎn)發(fā)內(nèi)網(wǎng)圖片,文章通過代碼示例介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,感興趣的小伙伴可以自己動(dòng)手試一下
    2023-10-10
  • nginx中rewrite和if的使用及配置方式

    nginx中rewrite和if的使用及配置方式

    文章主要解釋了Nginx中rewrite和ifginx跳轉(zhuǎn)需求的實(shí)現(xiàn)方式、rewrite和ifginx正則表達(dá)式、常用的Nginx正則表達(dá)式、案例配置等內(nèi)容,并涉及到了rewrite和if的應(yīng)用場(chǎng)景和用法,以及flag對(duì)Nginx中g(shù)inx防盜鏈案例等ginx的ginx基于瀏覽器實(shí)現(xiàn)ginx實(shí)現(xiàn)分離案例等
    2026-05-05
  • nginx各種代理配置大全

    nginx各種代理配置大全

    本文主要介紹了nginx各種代理配置大全,主要包括了路徑配置,http跳轉(zhuǎn)https,微信支付的校驗(yàn)等,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-09-09
  • Nginx服務(wù)器中強(qiáng)制使用緩存的配置及緩存優(yōu)先級(jí)的講解

    Nginx服務(wù)器中強(qiáng)制使用緩存的配置及緩存優(yōu)先級(jí)的講解

    這篇文章主要介紹了Nginx服務(wù)器中強(qiáng)制使用緩存的配置及緩存優(yōu)先級(jí)的講解,一定程度上可以幫助大家解決Nginx不緩存或緩存失效的問題,需要的朋友可以參考下
    2016-01-01
  • 關(guān)于nginx+uWsgi配置遇到的問題的解決

    關(guān)于nginx+uWsgi配置遇到的問題的解決

    uWSGI 是在像 nginx 、 lighttpd 以及 cherokee 服務(wù)器上的一個(gè)部署的選擇,本篇文章主要介紹了關(guān)于nginx+uWsgi配置遇到的問題的解決,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Nginx單IP地址配置多個(gè)SSL證書的方法示例

    Nginx單IP地址配置多個(gè)SSL證書的方法示例

    這篇文章主要介紹了Nginx單IP地址配置多個(gè)SSL證書的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2018-11-11
  • 使用nginx+tomcat+keepalived實(shí)現(xiàn)高可用的詳細(xì)步驟

    使用nginx+tomcat+keepalived實(shí)現(xiàn)高可用的詳細(xì)步驟

    這篇文章主要介紹了nginx+tomcat+keepalived實(shí)現(xiàn)高可用,包括安裝nginx服務(wù)的步驟,詳細(xì)介紹了安裝keepalived的方法,對(duì)nginx+tomcat+keepalived高可用相關(guān)知識(shí)感興趣的朋友一起看看吧
    2022-03-03
  • 通俗易懂講解nginx-rtmp-module

    通俗易懂講解nginx-rtmp-module

    nginx-rtmp-module?是一個(gè)用于 Nginx 的第三方模塊,它擴(kuò)展了 Nginx 服務(wù)器的功能,使其能夠處理實(shí)時(shí)流媒體數(shù)據(jù),本文就來(lái)詳細(xì)的介紹一下nginx-rtmp-module的使用,感興趣的可以了解一下
    2025-02-02

最新評(píng)論

英山县| 荆州市| 罗田县| 静乐县| 田东县| 金阳县| 乌审旗| 乌审旗| 洱源县| 土默特右旗| 黎平县| 浮山县| 宜丰县| 乌审旗| 成武县| 汾西县| 娱乐| 瑞安市| 瑞丽市| 拉萨市| 西青区| 襄汾县| 于田县| 安泽县| 星座| 家居| 平昌县| 兴国县| 蓝山县| 固镇县| 庆元县| 新闻| 平昌县| 舒城县| 裕民县| 辛集市| 郸城县| 景宁| 娄底市| 吉林省| 兰考县|