欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Nginx配置文件nginx.conf的基本配置實(shí)例詳解

 更新時(shí)間:2022年09月13日 11:04:53   作者:超級(jí)棒的科技  
Nginx(engine x)是一個(gè)輕量級(jí)的高性能的HTTP和反向代理web服務(wù)器及電子郵件(IMAP/POP3)代理服務(wù)器,下面這篇文章主要給大家介紹了關(guān)于Nginx配置文件nginx.conf基本配置的相關(guān)資料,需要的朋友可以參考下

前言

對(duì)于Nginx首先要了解的是Nginx的作用和它的代理方式,Nginx的作用為負(fù)載均衡、代理方式為反向代理。

負(fù)載均衡平衡web服務(wù)器集群中轉(zhuǎn)發(fā)給各服務(wù)器的請(qǐng)求數(shù),防止出現(xiàn)服務(wù)器因?yàn)樘幚碚?qǐng)求壓力大或小導(dǎo)致內(nèi)存溢出、宕機(jī)或資源浪費(fèi)的情況發(fā)生。

反向代理對(duì)外暴露的地址是代理服務(wù)器的地址隱藏了真實(shí)服務(wù)器的地址,客戶端將請(qǐng)求發(fā)送到代理服務(wù)器上。由代理服務(wù)器根據(jù)配置規(guī)則選擇真實(shí)服務(wù)器處理請(qǐng)求,在獲得服務(wù)器返回?cái)?shù)據(jù)后再返回給客戶端。此時(shí)代理服務(wù)器在外看來(lái)就是提供服務(wù)的服務(wù)器,客戶端對(duì)代理是無(wú)感知的并不知道具體是哪臺(tái)服務(wù)器處理的它的請(qǐng)求且不需要做任何配置。

正向代理:例如當(dāng)因工需要,需要訪問(wèn)瀏覽器正常訪問(wèn)不到的服務(wù)器時(shí),此時(shí)要找到一個(gè)可以訪問(wèn)該服務(wù)器的代理服務(wù)器??蛻舳藢⒄?qǐng)求發(fā)送給代理服務(wù)器,代理服務(wù)器去訪問(wèn)該服務(wù)器,然后將訪問(wèn)到的數(shù)據(jù)返回給我們,這樣的代理模式稱為正向代理。正向代理時(shí)真實(shí)客戶端的信息被屏蔽或者隱藏了,服務(wù)器只清楚請(qǐng)求來(lái)自哪臺(tái)代理服務(wù)器而不清楚來(lái)自哪個(gè)客戶端,但客戶端非常明確要訪問(wèn)的服務(wù)器地址。

即:正向代理代理的是客戶端的請(qǐng)求,反向代理代理的是服務(wù)器。

1. Nginx配置樣例

例如頁(yè)面請(qǐng)求地址為http://www.sayhi.com/products/pageManage,則在nginx.conf中配置server如下:

        server {
               listen 80;  #監(jiān)聽(tīng)80的服務(wù)端口
               server_name www.sayhi.com;  #監(jiān)聽(tīng)的域名
                location /{
                        root emstatic;
                        index index.html;
                }

                location /products {
                        proxy_pass http://127.0.0.1:8103/zuul-product/product/manage;
                        add_header 'Access-Control-Allow-Credentials' 'true';
                        add_header 'Access-Control-Allow-Origin' '*';
                }
        }

根據(jù)域名www.sayhi.com和后綴/products匹配到server中的server_name和location后,將剩余url后綴/pageManage拼接到location中的配置項(xiàng)proxy_pass的url后通過(guò)網(wǎng)關(guān)訪問(wèn)服務(wù)器資源。

所以訪問(wèn)http://www.sayhi.com/products/pageManage時(shí)經(jīng)過(guò)nginx配置后實(shí)際訪問(wèn)的地址為http://127.0.0.1:8103/zuul-product/product/manage/pageManage。

2. Nginx負(fù)載均衡方式

2.1 輪詢

依次按照順序訪問(wèn)后端的每一個(gè)服務(wù)器,按照這個(gè)計(jì)算,相當(dāng)于平均分配請(qǐng)求給所有集群節(jié)點(diǎn)-物理均衡。首先準(zhǔn)備一個(gè)upstream的虛擬域名,保管后端服務(wù)器的詳細(xì)信息。

? ? ? ?upstream ouservers{
? ? ? ?? ? ? ?server 127.0.0.1:8091;
? ? ? ?? ? ? ?server 128.0.0.2:8092;
? ? ? ?? ? ? ?server 129.0.0.3:8093;
? ? ? ?}

nginx啟動(dòng)時(shí)加載成為一個(gè)內(nèi)存的list對(duì)象元素有3個(gè)分別是8091 8092 8093,負(fù)載均衡的計(jì)算都是通過(guò)這個(gè)list完成的,在server中使用proxy_pass指向這個(gè)新創(chuàng)建的upstream名稱ouservers。

添加server案例

? ? ? ?server{
? ? ? ?? ? ? ?listen 80;
? ? ? ?? ? ? ?server_name www.ou.com;
? ? ? ?? ? ? ?location / {
? ? ? ?? ? ? ?? ? ? ?proxy_pass http://ouservers/;
? ? ? ?? ? ? ?}
? ? ? ?}

在訪問(wèn)有多個(gè)用戶訪問(wèn)www.ou.com時(shí)會(huì)把請(qǐng)求輪詢轉(zhuǎn)給127.0.0.1:8091、128.0.0.2:8093和129.0.0.3:8093服務(wù)器去處理。

2.2 權(quán)重

總是按照物理均衡分配并發(fā)有時(shí)候不滿足實(shí)際情況,按照情況通過(guò)占用比例的分配均衡邏輯就是權(quán)重(權(quán)衡比重)。權(quán)重基于輪詢完成,可以在upstream的輪詢基礎(chǔ)上添加權(quán)重的關(guān)鍵字weight,權(quán)重值越高轉(zhuǎn)發(fā)的請(qǐng)求越多(參數(shù)為整數(shù)等于down表示該server不可訪問(wèn))。

? ? ? ?upstream ouservers {
? ? ? ?? ? ? ?#補(bǔ)充后端服務(wù)器的ip:port-based
? ? ? ?? ? ? ?server 127.0.0.1:8091 weight=10;
? ? ? ?? ? ? ?server 128.0.0.2:8092 weight=5;
? ? ? ?? ? ? ?server 129.0.0.3:8093 weight=1;
? ? ? ?}

2.3 Nginx解決集群共享session問(wèn)題的方案

在單節(jié)點(diǎn)進(jìn)程中可以使用session屬性存儲(chǔ)一些數(shù)據(jù)。在一次會(huì)話中使用這些屬性如果是集群中會(huì)產(chǎn)生問(wèn)題,不能實(shí)現(xiàn)集群共享session數(shù)據(jù)。由于session是屬于服務(wù)器端的技術(shù),不同進(jìn)程中生成的session對(duì)象無(wú)法共同使用,所以無(wú)法使用session會(huì)話技術(shù)實(shí)現(xiàn)攜帶狀態(tài)的請(qǐng)求功能。

數(shù)據(jù)通信共享:會(huì)話的session會(huì)被全部節(jié)點(diǎn)所存儲(chǔ),并發(fā)高時(shí)會(huì)導(dǎo)致集群中每一個(gè)節(jié)點(diǎn)中都有量的session對(duì)象容易造成服務(wù)器內(nèi)存溢出。

ip_hash黏著:根據(jù)ip做hash取余計(jì)算綁定服務(wù)器但有可能導(dǎo)致傾斜,會(huì)有服務(wù)器由于傾斜嚴(yán)重,提前宕機(jī)。

采用第三方容器:session數(shù)據(jù)不再存儲(chǔ)到服務(wù)器本地,采用第三方存儲(chǔ)使每個(gè)服務(wù)器連接這個(gè)第三方存儲(chǔ)讀寫數(shù)據(jù)。但引入第三方勢(shì)必導(dǎo)致多占用網(wǎng)絡(luò)訪問(wèn)帶寬資源,對(duì)容器技術(shù)的穩(wěn)定性,速度要求比較高。理論上存儲(chǔ)容器可以是關(guān)系型數(shù)據(jù)庫(kù)(例mysql)。但是非關(guān)系型數(shù)據(jù)庫(kù)(例redis)是更好的選擇。

nignx配置ip_hash黏著只需要在upstream的括號(hào)中填寫一個(gè)關(guān)鍵屬性 "ip_hash"。

? ? ? ?upstream ouservers {
? ? ? ?? ? ? ?ip_hash;
? ? ? ?? ? ? ?server 127.0.0.1:8091;
? ? ? ?? ? ? ?server 127.0.0.1:8092;
? ? ? ?? ? ? ?server 127.0.0.1:8093;
? ? ? ?}

3. Nginx動(dòng)靜分離(靜態(tài)資源和動(dòng)態(tài)資源來(lái)自于不同的服務(wù)器)

后端服務(wù)器集群是動(dòng)態(tài)數(shù)據(jù)的來(lái)源,nginx作為http服務(wù)器代理用來(lái)管理后端所需文件和靜態(tài)資源,在nginx服務(wù)器中,準(zhǔn)備好訪問(wèn)的靜態(tài)資源可以通過(guò)域名url地址訪問(wèn)。

添加server案例(以Linux系統(tǒng)為例)

? ? ? ?server{
? ? ? ?? ? ? ?listen 80;
? ? ? ?? ? ? ?server_name www.image.com;
? ? ? ?? ? ? ?location /{
? ? ? ?? ? ? ?? ? ? ?root?/home/static; #關(guān)鍵字root配置項(xiàng)為靜態(tài)資源的根目錄
? ? ? ? ? ? ? ? ? ? ?index default.html #沒(méi)有找到指定靜態(tài)資源時(shí)默認(rèn)訪問(wèn)的靜態(tài)資源
? ? ? ?? ? ? ?}
? ? ? ? }

具體流轉(zhuǎn)過(guò)程如下:請(qǐng)求地址http://www.image.com/xyy.png匹配server中的location后將靜態(tài)資源名稱tp.png銜接在root配置項(xiàng)后,拼接成資源在Nginx服務(wù)器上的絕對(duì)地址/home/static/tp.png根據(jù)地址拿到靜態(tài)資源返回到瀏覽器頁(yè)面給用戶展示。

root配置項(xiàng):可以是文件夾絕對(duì)路徑,如Linux (root /home/static)、Windows(root C:/static)。也可以是文件夾相對(duì)路徑root static(表示在nginx安裝的根目錄有一個(gè)文件夾叫做static)。

index配置項(xiàng):表示當(dāng)訪問(wèn)請(qǐng)求匹配到location中的root后,在沒(méi)有找到指定靜態(tài)資源時(shí)默認(rèn)訪問(wèn)的靜態(tài)資源地址。index也可以配置多個(gè)靜態(tài)資源,例如:index default1.html default2.html。如果靜態(tài)資源/home/static/default1.html不存在則接著驗(yàn)證/home/static/default2.html是否存在,存在則用/default2.html在該server中發(fā)起內(nèi)部重定向去重新匹配location)

注:在配置nginx.conf文件時(shí)需要將資源ip和監(jiān)聽(tīng)域名寫進(jìn)Nginx服務(wù)器的本地hosts文件中(如127.0.0.1 www.sayhi.com)

總結(jié)

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

相關(guān)文章

  • Mac環(huán)境Nginx配置和訪問(wèn)本地靜態(tài)資源的實(shí)現(xiàn)

    Mac環(huán)境Nginx配置和訪問(wèn)本地靜態(tài)資源的實(shí)現(xiàn)

    這篇文章主要介紹了Mac環(huán)境Nginx配置和訪問(wèn)本地靜態(tài)資源的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • 淘寶Web服務(wù)器Tengine在CentOS下的安裝教程

    淘寶Web服務(wù)器Tengine在CentOS下的安裝教程

    這篇文章主要介紹了淘寶Web服務(wù)器Tengine在CentOS下的安裝教程,本文同時(shí)介紹了Tengine是什么,需要的朋友可以參考下
    2014-07-07
  • Nginx設(shè)置404錯(cuò)誤頁(yè)面跳轉(zhuǎn)的幾種方法總結(jié)

    Nginx設(shè)置404錯(cuò)誤頁(yè)面跳轉(zhuǎn)的幾種方法總結(jié)

    一個(gè)網(wǎng)站項(xiàng)目,肯定是避免不了404頁(yè)面的,通常使用Nginx作為Web服務(wù)器時(shí),有些相關(guān)配置方法,下面小編給大家?guī)?lái)了Nginx實(shí)現(xiàn)404頁(yè)面的幾種方法,感興趣的朋友一起看看吧
    2024-03-03
  • Nginx 403 forbidden的解決辦法

    Nginx 403 forbidden的解決辦法

    這篇文章主要介紹了Nginx 403 forbidden的解決辦法,,需要的朋友可以參考下
    2014-03-03
  • Nginx服務(wù)器搭建和基本配置詳解

    Nginx服務(wù)器搭建和基本配置詳解

    這篇文章主要介紹了Nginx服務(wù)器搭建和基本配置詳解,Nginx是事件驅(qū)動(dòng)的高性能服務(wù)器,需要的朋友可以參考下
    2015-09-09
  • 超實(shí)用的Nginx常見(jiàn)配置合集分享

    超實(shí)用的Nginx常見(jiàn)配置合集分享

    這篇文章主要為大家詳細(xì)介紹了超實(shí)用的Nginx常見(jiàn)配置合集,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)或工作有一定的參考價(jià)值,感興趣的可以了解一下
    2022-07-07
  • Nginx日志按天分割實(shí)戰(zhàn)

    Nginx日志按天分割實(shí)戰(zhàn)

    本文主要介紹了Nginx日志按天分割實(shí)戰(zhàn),方便快速按照天的維度分析以及查找報(bào)錯(cuò)定位,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • Nginx代理Partainer的具體使用

    Nginx代理Partainer的具體使用

    本文主要介紹了Nginx代理Partainer的具體使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Nginx中if語(yǔ)句的判斷條件與多條件判斷詳解

    Nginx中if語(yǔ)句的判斷條件與多條件判斷詳解

    這篇文章主要介紹了關(guān)于Nginx中if語(yǔ)句的判斷條件與多條件判斷的相關(guān)資料,文中給出了詳細(xì)的示例代碼,對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-03-03
  • nginx實(shí)現(xiàn)IP地址透?jìng)鞯氖纠a

    nginx實(shí)現(xiàn)IP地址透?jìng)鞯氖纠a

    默認(rèn)后端服務(wù)器只能看到是前端nginx調(diào)度器訪問(wèn)的本機(jī),本文主要介紹了nginx實(shí)現(xiàn)IP地址透?jìng)鞯氖纠a,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08

最新評(píng)論