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

docker nginx 配置文件要點(diǎn)及注意事項(xiàng)

 更新時(shí)間:2025年02月13日 09:27:24   作者:忘憂人生  
本文介紹了Nginx的配置要點(diǎn)及注意事項(xiàng),包括訪問靜態(tài)資源、負(fù)載均衡等,在訪問靜態(tài)資源時(shí),可以使用root或alias指令指定路徑,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧

        在平常的開發(fā)工作中,我們經(jīng)常需要訪問靜態(tài)資源(圖片、HTML頁(yè)面等)、訪問文件目錄、部署項(xiàng)目時(shí)進(jìn)行負(fù)載均衡等。那么我們就會(huì)使用到Nginx,nginx.conf 的配置至關(guān)重要。那么今天主要結(jié)合訪問靜態(tài)資源、負(fù)載均衡等總結(jié)下 nginx.conf 的配置要點(diǎn)及注意事項(xiàng)。

1:概述

        Nginx 是高性能、輕量級(jí)的 web 服務(wù)器和反向代理服務(wù)器。Nginx 可以作為靜態(tài)內(nèi)容服務(wù),如訪問HTML頁(yè)面、圖片等。Nginx 可以作為作為反向代理服務(wù)器,隱藏服務(wù)器真實(shí)IP,用戶只知道 Nginx 的地址,這樣可以提高服務(wù)安全性。Nginx 可以將動(dòng)態(tài)內(nèi)容請(qǐng)求轉(zhuǎn)發(fā)給后端應(yīng)用服務(wù)器。Nginx 可以將客戶端請(qǐng)求分發(fā)給后端服務(wù)器,通過配置實(shí)現(xiàn)負(fù)載均衡,提高系統(tǒng)的可用性。

2:訪問靜態(tài)資源      

1:靜態(tài)資源在同一個(gè)目錄

       (1):掛載目錄配置

 # 頁(yè)面目錄 前面的為宿主機(jī)目錄 后面的為容器目錄,如果容器中的目錄不存在,則會(huì)自動(dòng)創(chuàng)建
 - /docker/nginx/html:/usr/share/nginx/html

       (2):nginx.conf 配置文件

       路徑 root 配置:適合 location 路徑與文件路徑一致的情況,路徑是拼接的。如 location 為 /wx/,root 配置為 /usr/share/html,則訪問的完整目錄 為 /usr/share/html/wx/,會(huì)把 location 路徑拼接在 root 路徑后面。

user  nginx;
worker_processes  auto;
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
   server {
        listen 80;
        server_name localhost;
	    charset utf-8;
        location / {
           root /usr/share/nginx/html; #路徑為容器內(nèi)的路徑,通過掛載目錄,實(shí)際訪問到宿主機(jī)目錄
        }
    }
}

        路徑 alias 配置:適合 location 路徑與文件路徑不一致的情況,路徑是替換的。如 location 配置為 test,alias 配置的文件目錄為 /usr/share/html/wx/,則訪問的目錄即為 /usr/share/html/wx/,會(huì)把 location 的路徑替換為 alias 配置的路徑。所以建議 alias 后面的路徑配置的盡可能就是靜態(tài)資源所在的目錄,這樣訪問起來更加方便。

user  nginx;
worker_processes  auto;
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    server {
        listen 80;
        server_name localhost;
	    charset utf-8;
        location /test/ {
           alias /usr/share/nginx/wx/;
        }
    }
}

        (3) 訪問測(cè)試:http:ip:端口/文件路徑/test.jpg     

2:靜態(tài)資源在多個(gè)目錄

        (1):掛載目錄配置,需要配置多個(gè)掛載目錄

# 頁(yè)面目錄
- /docker/nginx/html/images:/usr/share/nginx/html
- /docker/nginx/html/photo:/usr/share/nginx/wx

       (2):nginx.conf 配置文件:

user  nginx;
worker_processes  auto;
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
   server {
        listen 9016;
        server_name localhost;
	    charset utf-8;
        # 路徑 root 方式配置
        # 通過 /html/ 訪問,即文件路徑為 /usr/share/nginx/html/ 目錄
        location /html/ {
           root /usr/share/nginx;
        }
        # 通過 /wx/訪問,即文件夾路徑為 /usr/share/nginx/wx/ 目錄
        location /wx/ {
           root /usr/share/nginx;
        }
        # 路徑 alias 方式配置
        # 通過 /html/ 訪問,即文件路徑為 /usr/share/nginx/html/ 目錄
        location /html/ {
           alias /usr/share/nginx/html/;   # 配置后面帶 /
        }
        # 通過 /wx/訪問,即文件夾路徑為 /usr/share/nginx/wx/ 目錄
        location /wx/ {
           alias /usr/share/nginx/wx/;     # 配置后面帶 /
        }
    }
}

       (3):訪問圖片

        ????

       (4) 總結(jié):root 和 alias 都用于指定路徑,在 docker 容器中,指向的都是容器中的路徑,即需要配置掛載目錄,將宿主機(jī)的目錄掛載到容器指定的目錄。root 中路徑配置,特別注意最后面沒有 / ,根據(jù)路徑訪問時(shí)會(huì)將 location 的路徑拼接到 root 指定的路徑后面,root 配置路徑方式是進(jìn)行路徑拼接。alias 配置路徑,特別注意后面有 / ,alias 路徑配置方式訪問時(shí),匹配對(duì)應(yīng)的 location,會(huì)將內(nèi)容替換為 alias 中配置的完整路徑。簡(jiǎn)而言之,root 是路徑拼接,alias 是路徑替換。

3:訪問共享目錄

        我們經(jīng)常需要將常用的軟件、文件等歸納整理放在服務(wù)器的某個(gè)文件夾下,為了使用更加的方便,這個(gè)時(shí)候,就需要訪問服務(wù)器上的某個(gè)目錄。

 (1) nginx.conf 配置

user  nginx;
worker_processes  auto;
error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;
events {
    worker_connections  1024;
}
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen 80;
        server_name localhost;
	    charset utf-8;
        location /test/ {
           alias /usr/share/nginx/wx/;
           autoindex on;                   # 開啟自動(dòng)索引,如果不需要可以去掉
	       autoindex_exact_size off;       # 顯示文件大小
	       autoindex_localtime on;         # 顯示文件時(shí)間 
        }
    }
}

       上面配置中一定要注意,如果不添加 autoindex on,on 開啟自動(dòng)索引,那么訪問文件夾時(shí)會(huì)報(bào) 403 forbidden。autoindex on 用于啟用目錄列表功能,當(dāng)訪問沒有默認(rèn)索引文件的目錄時(shí),Nginx會(huì)自動(dòng)生成包含該目錄及子目錄的 HTML 頁(yè)面并返回給客戶端。

(2):測(cè)試如下:

 4:負(fù)載均衡配置

 (1):如果服務(wù)是單節(jié)點(diǎn),則不涉及負(fù)載均衡配置

user  nginx;
worker_processes  auto;
pid        /var/run/nginx.pid;
events {
    worker_connections  1024;
}
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  60;
	server {
        listen 80;
        server_name localhost;
	    charset utf-8;
        location / {
           proxy_pass  http://localhost:8008;
           proxy_set_header Host $host;
           proxy_set_header X-Real-IP $remote_addr;
           proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    }
}

(2):服務(wù)多節(jié)點(diǎn)負(fù)載均衡配置

        負(fù)載均衡將請(qǐng)求分發(fā)到不同的后端服務(wù)節(jié)點(diǎn),這樣可以減輕服務(wù)壓力,提高服務(wù)可用性。負(fù)載均衡可以更加合理的利用服務(wù)器的資源,有的服務(wù)器配置高,有的服務(wù)器剩余資源少,那么權(quán)重輪詢可以更加合理的使用服務(wù)器的資源。

        負(fù)載均衡部署方式可以是同一個(gè)機(jī)器多個(gè)節(jié)點(diǎn),也可以是多機(jī)器多節(jié)點(diǎn)。單機(jī)器多節(jié)點(diǎn)的有點(diǎn)在于資源利用率高、不存在跨節(jié)點(diǎn)通信的問題。通常用于開發(fā)環(huán)境、小型應(yīng)用、或者非關(guān)鍵服務(wù)。單機(jī)器多節(jié)點(diǎn)存在單點(diǎn)故障的問題,多節(jié)點(diǎn)共享資源,存在性能問題。多機(jī)器多節(jié)點(diǎn)性能高、方便拓展、不存在單點(diǎn)故障的問題,缺點(diǎn)是成本高、如果跨機(jī)通信,維護(hù)和配置復(fù)雜。多機(jī)器多節(jié)點(diǎn)適用于中大型應(yīng)用,對(duì)性能要求高的服務(wù)。

user  nginx;
worker_processes  auto;
error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;
events {
    worker_connections  1024;
}
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    access_log  /var/log/nginx/access.log  main;
    sendfile        on;
    #tcp_nopush     on;
    keepalive_timeout  65;
    #gzip  on;
    # 負(fù)載均衡,兩個(gè)節(jié)點(diǎn)的ip和端口,配置ip和端口即可,不需配置http頭信息
    # upstream 定義一組后端服務(wù)器
    # 默認(rèn)負(fù)載均衡方式,將請(qǐng)求依次發(fā)送給后端服務(wù)節(jié)點(diǎn)
    upstream backend {
        server 11.22.xx.xx:8001;
        server 11.22.xx.xx:8002;
    }
    # 加權(quán)輪詢,權(quán)重越大的節(jié)點(diǎn)處理的請(qǐng)求越多
    upstream backend {
        server 11.22.xx.xx:8001 weight=8;
        server 11.22.xx.xx:8002 weight=2;
    }
    # ip 哈希輪詢 根據(jù)客戶端的 IP 地址進(jìn)行哈希計(jì)算,確保同一個(gè)客戶端的請(qǐng)求總是分配給同一臺(tái)后端服務(wù)器。
    upstream backend {
        ip_hash;  # 啟用 IP 哈希
        server 11.22.xx.xx:8001;
        server 11.22.xx.xx:8002;
    }
   server {
        listen 80;
        server_name localhost;
        charset utf-8;
        location / {
           proxy_pass  http://backend; # 將請(qǐng)求轉(zhuǎn)發(fā)到 upstream 組,proxy_pass 將請(qǐng)求轉(zhuǎn)發(fā)給指定的目標(biāo)服務(wù)器
           proxy_set_header Host $host;
           proxy_set_header X-Real-IP $remote_addr;
           proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    }
}

          nginx 常用輪詢方式:

          默認(rèn)輪詢:默認(rèn)輪詢方式會(huì)將請(qǐng)求依次轉(zhuǎn)發(fā)給后端服務(wù)器

          加權(quán)輪詢:配置不同的權(quán)重,權(quán)重越大的服務(wù)器處理的請(qǐng)求越多。主要常用于不同服務(wù)器的配置、性能有差距,或者剩余服務(wù)器資源的合理利用。

          IP 哈希輪詢:根據(jù)客戶端的 IP 地址進(jìn)行哈希計(jì)算,確保同一個(gè)客戶端的請(qǐng)求總是分配給同一臺(tái)后端服務(wù)器。根據(jù)客戶端 IP 分配請(qǐng)求,適合會(huì)話保持。

        以上為 Nginx 主要內(nèi)容,在平常的開發(fā)工作中,可以進(jìn)行靜態(tài)資源的訪問。如有小程序靜態(tài)資源、pc端靜態(tài)資源,則將不同的靜態(tài)資源放在不同的目錄下,配置不同的掛載目錄。root 類型配置的 location 路徑會(huì)拼接到 root 配置的路徑后面。alias 類型配置的 location 路徑主要是訪問使用,實(shí)際是將其替換為 alias 后面配置的路徑。所以 root 適用于訪問路徑和靜態(tài)資源路徑一致的場(chǎng)景,alias 適用于訪問路徑和靜態(tài)資源路徑不一致的場(chǎng)景。使用負(fù)載均衡配置配置,可以更加合理的使用服務(wù)器的資源,提高服務(wù)可用性。

到此這篇關(guān)于docker nginx 配置文件詳解的文章就介紹到這了,更多相關(guān)docker nginx 配置文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Windows Docker部署Jenkins的實(shí)現(xiàn)步驟

    Windows Docker部署Jenkins的實(shí)現(xiàn)步驟

    Jenkins是一款開源的持續(xù)集成工具,廣泛用于項(xiàng)目開發(fā),能提供自動(dòng)構(gòu)建測(cè)試部署等功能,本文主要介紹了Windows Docker部署Jenkins的實(shí)現(xiàn)步驟,感興趣的可以了解一下
    2024-03-03
  • Docker之開啟遠(yuǎn)程訪問的實(shí)現(xiàn)

    Docker之開啟遠(yuǎn)程訪問的實(shí)現(xiàn)

    這篇文章主要介紹了Docker之開啟遠(yuǎn)程訪問的實(shí)現(xiàn),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-05-05
  • Docker與Jenkins實(shí)現(xiàn)RuoYi-Vue前后端分離項(xiàng)目的CICD全流程自動(dòng)化

    Docker與Jenkins實(shí)現(xiàn)RuoYi-Vue前后端分離項(xiàng)目的CICD全流程自動(dòng)化

    在現(xiàn)代軟件開發(fā)流程中,持續(xù)集成/持續(xù)部署(CICD)已經(jīng)成為提升開發(fā)效率、保障代碼質(zhì)量的關(guān)鍵實(shí)踐,本文將詳細(xì)介紹如何利用Docker容器化技術(shù)結(jié)合Jenkins,搭建一套完整的CICD流程,實(shí)現(xiàn)RuoYi-Vue前后端分離項(xiàng)目的自動(dòng)化構(gòu)建、測(cè)試和部署,從代碼提交到自動(dòng)部署的全流程自動(dòng)化
    2026-01-01
  • 詳解Docker Compose 中可用的環(huán)境變量問題

    詳解Docker Compose 中可用的環(huán)境變量問題

    Compose 的多個(gè)部分在某種情況下處理環(huán)境變量。這篇文章主要介紹了Docker Compose 中可用的環(huán)境變量問題,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • docker中run和exec有什么區(qū)別示例詳解

    docker中run和exec有什么區(qū)別示例詳解

    這篇文章主要介紹了docker中run和exec有什么區(qū)別的相關(guān)資料,docker?run`用于創(chuàng)建并啟動(dòng)新容器,而docker?exec用于在已運(yùn)行容器中執(zhí)行命令,前者適用于啟動(dòng)新服務(wù),后者適用于調(diào)試和管理運(yùn)行中的容器,需要的朋友可以參考下
    2025-03-03
  • Docker v1.13 新功能介紹

    Docker v1.13 新功能介紹

    本篇文章主要介紹了Docker v1.13 新功能介紹,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-02-02
  • docker容器數(shù)據(jù)卷之具名掛載和匿名掛載問題

    docker容器數(shù)據(jù)卷之具名掛載和匿名掛載問題

    容器數(shù)據(jù)卷就是目錄的掛載,將我們的容器的目錄掛載到宿主機(jī)上,從而實(shí)現(xiàn)打通宿主機(jī)和容器之間的文件共享功能,這篇文章主要介紹了docker容器數(shù)據(jù)卷 - 具名掛載和匿名掛載問題,需要的朋友可以參考下
    2021-11-11
  • Docker版FFmpeg安裝部署的詳細(xì)步驟

    Docker版FFmpeg安裝部署的詳細(xì)步驟

    項(xiàng)目組開發(fā)過程用因?yàn)橐褂靡纛l格式轉(zhuǎn)換功能,FFmpeg是常見的音視頻處理工具,本文就來介紹一下Docker版FFmpeg安裝部署的詳細(xì)步驟,感興趣的可以了解一下
    2023-10-10
  • 通過idea打包項(xiàng)目到docker的操作方法

    通過idea打包項(xiàng)目到docker的操作方法

    這篇文章主要介紹了通過idea打包項(xiàng)目到docker的操作方法,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-05-05
  • Ollama在Docker下的安裝與配置詳細(xì)教程

    Ollama在Docker下的安裝與配置詳細(xì)教程

    這篇文章主要介紹了如何通過Docker拉取Ollama鏡像并運(yùn)行,包括可視化界面和命令行兩種方式,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2025-02-02

最新評(píng)論

曲靖市| 滨州市| 慈溪市| 扎鲁特旗| 江城| 峨眉山市| 乐昌市| 方正县| 绍兴市| 黄梅县| 白沙| 武穴市| 左权县| 枣强县| 牙克石市| 神池县| 册亨县| 竹山县| 徐水县| 左贡县| 来安县| 玉龙| 平南县| 遂昌县| 贵德县| 金川县| 松溪县| 潞西市| 河津市| 东乡县| 新龙县| 化德县| 钟山县| 永寿县| 海林市| 松溪县| 岗巴县| 伊春市| 岱山县| 鹤山市| 西贡区|