中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

網(wǎng)站建設(shè)與維護(hù)是什么內(nèi)容?十大軟件培訓(xùn)機(jī)構(gòu)

網(wǎng)站建設(shè)與維護(hù)是什么內(nèi)容?,十大軟件培訓(xùn)機(jī)構(gòu),ui設(shè)計(jì)與制作,地方網(wǎng)站有何作用1. nginx 簡(jiǎn)介 nginx性能比apache強(qiáng),體現(xiàn) 在io模型方面 76 Pv: UV : 不同瀏覽器是不同的UV GET 獲取 POST 上傳 HEAT 只看頭 訪問(wèn)網(wǎng)站的流程 1.dns解析 2.cdn 3.tcp 4.web服務(wù)器 處理 建立連接 接收請(qǐng)求 處理請(qǐng)求 GET POST等 獲取資源 構(gòu)…

1. nginx 簡(jiǎn)介

nginx性能比apache強(qiáng),體現(xiàn) 在io模型方面

76

Pv:

UV : 不同瀏覽器是不同的UV

GET 獲取

POST 上傳

HEAT 只看頭

在這里插入圖片描述

訪問(wèn)網(wǎng)站的流程
1.dns解析

2.cdn

3.tcp

4.web服務(wù)器 處理

建立連接

接收請(qǐng)求

處理請(qǐng)求 GET POST等

獲取資源

構(gòu)建響應(yīng)報(bào)文

發(fā)送響應(yīng)報(bào)文

記錄日志

5) 瀏覽器接收響應(yīng)報(bào)文,進(jìn)行頁(yè)面渲染

http請(qǐng)求報(bào)文

http響應(yīng)報(bào)文

nginx如何優(yōu)化?

要優(yōu)化 Nginx 的性能和效率,可以考慮以下幾個(gè)方面的優(yōu)化措施:

  1. 調(diào)整工作進(jìn)程和連接數(shù):

    • 調(diào)整 Nginx 的工作進(jìn)程數(shù),根據(jù)服務(wù)器的 CPU 核心數(shù)和負(fù)載情況進(jìn)行合理的設(shè)置。
    • 調(diào)整 Nginx 的最大連接數(shù)限制,確保與實(shí)際需求相匹配。
  2. 合理配置緩存:

    • 針對(duì)靜態(tài)資源(如圖片、樣式表、JavaScript 等),使用 Nginx 的內(nèi)置緩存來(lái)加速訪問(wèn)。
    • 配置適當(dāng)?shù)木彺鏁r(shí)間和緩存規(guī)則,以減少對(duì)后端服務(wù)器的請(qǐng)求。
  3. 優(yōu)化 SSL/TLS:

    • 使用更高效的 SSL/TLS 版本,并配置適當(dāng)?shù)拿艽a套件,以確保安全性和性能的折中。
    • 考慮使用緩存 SSL/TLS 會(huì)話以減少握手的開(kāi)銷(xiāo)。
  4. 開(kāi)啟 Gzip 壓縮:

    • 配置 Nginx 開(kāi)啟 Gzip 壓縮,減小傳輸?shù)臄?shù)據(jù)量,提高響應(yīng)速度。
    • 可以根據(jù)不同的文件類(lèi)型選擇合適的壓縮級(jí)別和壓縮算法。
  5. 負(fù)載均衡和反向代理:

    • 使用 Nginx 的負(fù)載均衡功能,將請(qǐng)求分發(fā)到多個(gè)后端服務(wù)器,提高系統(tǒng)的吞吐量和可用性。
    • 使用 Nginx 的反向代理功能,將請(qǐng)求代理到不同的后端服務(wù)器,實(shí)現(xiàn)請(qǐng)求的路由和負(fù)載均衡。
  6. 配置文件優(yōu)化:

    • 優(yōu)化 Nginx 配置文件,確保配置項(xiàng)的正確性和一致性。
    • 避免不必要的模塊加載,只加載需要的模塊和功能。
    • 使用 include 文件來(lái)組織和管理配置項(xiàng),提高可維護(hù)性。
  7. 監(jiān)測(cè)和日志優(yōu)化:

    • 啟用 Nginx 的訪問(wèn)日志和錯(cuò)誤日志,進(jìn)行監(jiān)測(cè)和故障排查。
    • 使用日志切割來(lái)管理日志文件的大小和數(shù)量,避免過(guò)大的日志文件影響性能。

需要注意的是,優(yōu)化策略和步驟可能因環(huán)境和實(shí)際需求而有所不同。建議根據(jù)實(shí)際情況進(jìn)行針對(duì)性的優(yōu)化,并進(jìn)行性能測(cè)試和監(jiān)測(cè),以評(píng)估優(yōu)化效果和調(diào)整進(jìn)一步優(yōu)化的策略。

請(qǐng)求的流程

描述: 1.客戶發(fā)起情況到服務(wù)器網(wǎng)卡;
2.服務(wù)器網(wǎng)卡接受到請(qǐng)求后轉(zhuǎn)交給內(nèi)核處理;
3.內(nèi)核根據(jù)請(qǐng)求對(duì)應(yīng)的套接字,將請(qǐng)求交給工作在用戶空間的Web服務(wù)器進(jìn)程
4.Web服務(wù)器進(jìn)程根據(jù)用戶請(qǐng)求,向內(nèi)核進(jìn)行系統(tǒng)調(diào)用,申請(qǐng)獲取相應(yīng)資源(如index.html)
5.內(nèi)核發(fā)現(xiàn)web服務(wù)器進(jìn)程請(qǐng)求的是一個(gè)存放在硬盤(pán)上的資源,因此通過(guò)驅(qū)動(dòng)程序連接磁盤(pán)
6.內(nèi)核調(diào)度磁盤(pán),獲取需要的資源
7.內(nèi)核將資源存放在自己的緩沖區(qū)中,并通知Web服務(wù)器進(jìn)程
8.Web服務(wù)器進(jìn)程通過(guò)系統(tǒng)調(diào)用取得資源,并將其復(fù)制到進(jìn)程自己的緩沖區(qū)中
9.Web服務(wù)器進(jìn)程形成響應(yīng),通過(guò)系統(tǒng)調(diào)用再次發(fā)給內(nèi)核以響應(yīng)用戶請(qǐng)求
10.內(nèi)核將響應(yīng)發(fā)送至網(wǎng)卡
11.網(wǎng)卡發(fā)送響應(yīng)給用戶
這就是整個(gè)web請(qǐng)求的全過(guò)程。這個(gè)過(guò)程涉及到2個(gè)IO,一個(gè)就是客戶端請(qǐng)求的網(wǎng)絡(luò)I/O,另一個(gè)就是Web服務(wù)器請(qǐng)求資源的磁盤(pán)I/O

服務(wù)器發(fā)送請(qǐng)求>到達(dá)服務(wù)器網(wǎng)卡 緩沖區(qū)》

一個(gè)常見(jiàn)的 Web 請(qǐng)求過(guò)程可以分為以下幾個(gè)步驟:

  1. 用戶在瀏覽器中輸入 URL(統(tǒng)一資源定位符),并按下回車(chē)鍵。

  2. 瀏覽器解析 URL,提取出主機(jī)名(如:www.example.com)和資源路徑(如:/index.html)。

  3. 瀏覽器首先會(huì)查詢本地緩存,看是否有之前請(qǐng)求過(guò)的相同資源的副本。如果有且未過(guò)期,瀏覽器會(huì)直接從緩存中獲取資源,跳過(guò)后續(xù)步驟。

  4. 如果緩存中沒(méi)有相應(yīng)的資源或資源已過(guò)期,瀏覽器會(huì)通過(guò) DNS(域名系統(tǒng))解析獲取主機(jī)的 IP 地址。DNS 解析將域名轉(zhuǎn)換為 IP 地址,以便瀏覽器能夠與服務(wù)器建立連接。

  5. 瀏覽器使用獲取到的 IP 地址與服務(wù)器建立 TCP(傳輸控制協(xié)議)連接。TCP 提供可靠的、面向連接的數(shù)據(jù)傳輸。

  6. 一旦建立 TCP 連接,瀏覽器會(huì)發(fā)送 HTTP(超文本傳輸協(xié)議)請(qǐng)求到服務(wù)器。請(qǐng)求中包含請(qǐng)求方法(如 GET、POST)、請(qǐng)求頭(包含一些元數(shù)據(jù))、請(qǐng)求路徑等信息。

  7. 服務(wù)器接收到請(qǐng)求后,根據(jù)請(qǐng)求路徑找到對(duì)應(yīng)的資源,并進(jìn)行處理。這可能涉及到業(yè)務(wù)邏輯的處理、數(shù)據(jù)庫(kù)查詢等。

  8. 服務(wù)器將處理完的資源以 HTTP 響應(yīng)的形式返回給瀏覽器。響應(yīng)中包含狀態(tài)碼(用于表示請(qǐng)求的成功或失敗)、響應(yīng)頭(包含一些元數(shù)據(jù))、響應(yīng)體(包含實(shí)際的響應(yīng)內(nèi)容)等信息。

  9. 瀏覽器接收到響應(yīng)后,會(huì)根據(jù)響應(yīng)的內(nèi)容類(lèi)型進(jìn)行相應(yīng)的處理。比如,如果響應(yīng)是 HTML 頁(yè)面,瀏覽器會(huì)解析 HTML 并渲染頁(yè)面;如果響應(yīng)是圖片,瀏覽器會(huì)顯示該圖片。

  10. 瀏覽器將解析完的資源進(jìn)行展示,用戶可以在瀏覽器中看到相應(yīng)的內(nèi)容。同時(shí),瀏覽器還會(huì)將響應(yīng)內(nèi)容保存到緩存中,以便下次請(qǐng)求同樣的資源時(shí)可以直接從緩存中獲取,提高性能。

以上是一個(gè)常規(guī)的 Web 請(qǐng)求過(guò)程,不同的應(yīng)用場(chǎng)景和技術(shù)可能會(huì)有所不同,但基本的流程是相似的。

HTTP(超文本傳輸協(xié)議)中的首部字段是用于在請(qǐng)求和響應(yīng)消息中傳遞元數(shù)據(jù)和其他相關(guān)信息的一種機(jī)制。以下是HTTP中常見(jiàn)的首部字段:

  1. 通用首部字段:

    • Cache-Control:控制緩存行為。
    • Connection:控制連接的行為。
    • Date:日期和時(shí)間。
    • Upgrade:要求服務(wù)器升級(jí)到不同的協(xié)議。
    • Via:中間代理服務(wù)器的信息。
  2. 請(qǐng)求首部字段:

    • Accept:指定客戶端可以接受的內(nèi)容類(lèi)型。
    • Accept-Encoding:指定客戶端可以接受的內(nèi)容編碼方式。
    • Content-Type:請(qǐng)求中發(fā)送的實(shí)體的媒體類(lèi)型。
    • User-Agent:客戶端的用戶代理標(biāo)識(shí)。
  3. 響應(yīng)首部字段:

    • Content-Length:返回的實(shí)體主體的長(zhǎng)度(以字節(jié)為單位)。
    • Content-Encoding:指定響應(yīng)實(shí)體使用的編碼方式。
    • Content-Type:響應(yīng)實(shí)體的媒體類(lèi)型。
    • Server:服務(wù)器的軟件名稱(chēng)和版本號(hào)。
    • Set-Cookie:設(shè)置一個(gè)或多個(gè)Cookie。
  4. 實(shí)體首部字段:

    • Content-Length:實(shí)體主體的長(zhǎng)度(以字節(jié)為單位)。
    • Content-Encoding:實(shí)體主體的編碼方式。
    • Content-Type:實(shí)體主體的媒體類(lèi)型。

還有許多其他的首部字段,用于傳遞不同的信息。每個(gè)首部字段都有其特定的作用和語(yǔ)義,用于幫助客戶端和服務(wù)器之間進(jìn)行正確的通信和處理請(qǐng)求或響應(yīng)。

curl -v www.baidu.com

< HTTP/1.1 302 Moved Temporarily #302 臨時(shí)重定向
< Server: openresty
< Date: Fri, 08 Sep 2023 14:10:10 GMT #表示服務(wù)器生成響應(yīng)的日期和時(shí)間,以協(xié)調(diào)世界時(shí)(UTC)表示。
< Content-Type: text/html #響應(yīng)主體的媒體類(lèi)型,這里的值是 “text/html”,表示返回的內(nèi)容是 HTML 文檔
< Content-Length: 142 #表示響應(yīng)主體的長(zhǎng)度,以字節(jié)為單位,這里的值是 142。
< Connection: keep-alive #指示服務(wù)器是否要求客戶端保持持久連接,在此示例中,服務(wù)器要求客戶端維持持久連接。
< Location: https://www.oppo.com/
< Request-Id: 64fb2b421cfe0cfcf891adbc83ce4faa #用于標(biāo)識(shí)請(qǐng)求的唯一編號(hào)或標(biāo)識(shí)符
< X-IP-Source: 4cb2b356b598ca96d5297afa558bd372 #指示客戶端的 IP 地址或來(lái)源
< Access-Control-Allow-Origin: * #用于指示服務(wù)器所允許的跨域請(qǐng)求的來(lái)源。在這個(gè)示例中,服務(wù)器允許所有來(lái)源的跨域請(qǐng)求。
< strict-transport-security: max-age=31536000 #用于指示服務(wù)器所允許的跨域請(qǐng)求的來(lái)源。在這個(gè)示例中,服務(wù)器允許所有來(lái)源的跨域請(qǐng)求。

網(wǎng)絡(luò)IO

同步:你去問(wèn)

異步:主動(dòng)通知你

阻塞:影響干別的事

異步: 不影響

I/O 多路復(fù)用

windows不支持epoll

nginx為什么性能好?

epoll模型,MMAP

支持0復(fù)制

Nginx之所以具有良好的性能,主要有以下幾個(gè)原因:

  1. 異步非阻塞模型:Nginx采用了事件驅(qū)動(dòng)的異步非阻塞架構(gòu),通過(guò)使用少量的線程即可處理大量并發(fā)連接。這種設(shè)計(jì)方式使得Nginx在高并發(fā)場(chǎng)景下能夠高效地處理請(qǐng)求,提高了系統(tǒng)的吞吐量。

  2. 輕量級(jí):Nginx是一個(gè)輕量級(jí)的服務(wù)器軟件,具有很小的內(nèi)存占用和CPU消耗。它的代碼精簡(jiǎn),功能模塊化,只包含了核心的功能,減少了不必要的資源開(kāi)銷(xiāo),提高了性能。

  3. 出色的內(nèi)存管理:Nginx使用了高效的內(nèi)存管理機(jī)制,能夠快速分配和釋放內(nèi)存,有效地降低了內(nèi)存碎片化的問(wèn)題,并提高了內(nèi)存的利用率。

  4. 高度可定制性:Nginx提供了豐富的配置選項(xiàng),可以根據(jù)具體需求進(jìn)行靈活的配置和定制。用戶可以根據(jù)自己的需求選擇合適的模塊和功能,避免了不必要的開(kāi)銷(xiāo),提高了性能。

綜上所述,Nginx通過(guò)其異步非阻塞的架構(gòu)、輕量級(jí)設(shè)計(jì)、高效的內(nèi)存管理和可定制性等特點(diǎn),使得其具有優(yōu)秀的性能表現(xiàn)。

nginx緩存功能?

主進(jìn)程指派工作

2. nginx安裝

編譯安裝

#yum -y install gcc pcre-devel openssl-devel zlib-devel make

wget https://nginx.org/download/nginx-1.24.0.tar.gz

tar -xf nginx-1.24.0.tar.gz

cd nginx-1.24.0/

useradd -s /sbin/nologin nginx

cd /apps/nginx-1.24.0

./configure --help

./configure --prefix=/apps/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre --with-stream --with-stream_ssl_module --with-stream_realip_module

make && make install

chown -R nginx.nginx /apps/nginx

nginx沒(méi)有線程

nginx 平滑升級(jí)

yum安裝升級(jí)

模擬用戶訪問(wèn):

dd if=/dev/zero of=1.img bs=1M count=100

wget --limit-rate=100 http://192.168.1.150/1.img

nginx1.18 ->nginx 1.24

1.nginx -V 查看參數(shù)

root@ubuntu20:/apps/nginx-1.24.0# nginx -V
nginx version: nginx/1.18.0 (Ubuntu)
built with OpenSSL 1.1.1f 31 Mar 2020
TLS SNI support enabled
configure arguments: --with-cc-opt=‘-g -O2 -fdebug-prefix-map=/build/nginx-lUTckl/nginx-1.18.0=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Wdate-time -D_FORTIFY_SOURCE=2’ --with-ld-opt=‘-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -fPIC’ --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --modules-path=/usr/lib/nginx/modules --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-compat --with-pcre-jit --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_v2_module --with-http_dav_module --with-http_slice_module --with-threads --with-http_addition_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module=dynamic --with-http_sub_module --with-http_xslt_module=dynamic --with-stream=dynamic --with-stream_ssl_module --with-mail=dynamic --with-mail_ssl_module

2.下載包解壓,

./configure 帶上nginx -V 查詢到的參數(shù)

uubuntu20.04./configure: error: the HTTP XSLT module requires the libxml2/libxslt libraries. You can either do not enable the module or install the libraries.

安裝sudo apt update && sudo apt install libxml2-dev libxslt-dev

nginx ./configure: error: the HTTP image filter module requires the GD library. You can either do not enable the module or install the libraries.

安裝 sudo apt update sudo apt install libgd-dev

3.編譯:

make

生成的二進(jìn)制文件在objs目錄

root@ubuntu20:/apps/nginx-1.24.0/objs# ll nginx
-rwxr-xr-x 1 root root 8083408 Sep 9 12:33 nginx*

4.備份的二進(jìn)制文件

root@ubuntu20:/apps/nginx-1.24.0/objs# which nginx
/usr/sbin/nginx

cp /usr/sbin/nginx{,.bak}

untu20:/usr/sbin# cd
root@ubuntu20:~# \cp /apps/nginx-1.24.0/objs/nginx /usr/sbin/nginx
cp: cannot create regular file ‘/usr/sbin/nginx’: Text file busy

強(qiáng)制替換root@ubuntu20:~# \cp -f /apps/nginx-1.24.0/objs/nginx /usr/sbin/nginx

5.測(cè)試升級(jí)的nginx是否兼容,出現(xiàn)ok才能升級(jí),我這里是測(cè)試

root@ubuntu20:~# /usr/sbin/nginx -t
nginx: [emerg] module “/usr/share/nginx/modules/ngx_http_image_filter_module.so” version 1018000 instead of 1024000 in /etc/nginx/modules-enabled/50-mod-http-image-filter.conf:1
nginx: configuration file /etc/nginx/nginx.conf test failed

這個(gè)原因是因?yàn)橐郧皀ginx modules 和現(xiàn)在官方的modules 不匹配需要我們先將舊的modules 卸載安裝新版官方的modules

安裝官方源

sudo apt install curl gnupg2 ca-certificates lsb-release ubuntu-keyring

導(dǎo)入密鑰

curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor \| sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null

配置穩(wěn)定版本的源

echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/ubuntu `lsb_release -cs` nginx" \| sudo tee /etc/apt/sources.list.d/nginx.list

優(yōu)先選擇nginx官方的包。而不是系統(tǒng)源的包

echo -e "Package: *\nPin: origin nginx.org\nPin: release o=nginx\nPin-Priority: 900\n" \| sudo tee /etc/apt/preferences.d/99nginx

更新

sudo apt update

查看源中所有nginx的模塊,可用看到之前是libnginx-mod .1.24版本是nginx-mod
image-20230909130907918

apt remove lib-nginx-mod* #卸載舊的nginx模塊

apt install nginx-mod* #安裝1.24版本的nginx模塊

/usr/sbin/nginx -t 測(cè)試ok

root@ubuntu20:~# //usr/sbin/nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

升級(jí)后訪問(wèn)zabbix 網(wǎng)站 502 Bad Gateway

可能是nginx 版本和zabbix不匹配的原因

源碼安裝平滑升級(jí)

升級(jí)要經(jīng)過(guò)充分的測(cè)試

nginx版本與業(yè)務(wù)是否匹配

編譯:注意不要make install

備份nginx

拷貝新的nginx文件

cp -f /apps/nginx-1.25.2/objs/nginx /apps/nginx/sbin/

測(cè)試

[root@rocky8 logs]# /apps/nginx/sbin/nginx -t
nginx: the configuration file /apps/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /apps/nginx/conf/nginx.conf test is successful

nginx -t 測(cè)試通過(guò)后,發(fā)送usr2信號(hào)

kill -USR2 cat /apps/nginx/logs/nginx.pid #會(huì)生成新進(jìn)程,舊版本主進(jìn)程PID的文件重命名為nginx.pid.oldbin,并啟動(dòng)新的nginx
在這里插入圖片描述

[root@rocky8 logs]# cat /apps/nginx/logs/nginx.pid.oldbin
25094
[root@rocky8 logs]# cat /apps/nginx/logs/nginx.pid
25329

向舊的進(jìn)程發(fā)送which信號(hào), 它會(huì)逐步關(guān)閉旗下的工作進(jìn)程(主進(jìn)程不退出),這時(shí)所有請(qǐng)求都會(huì)由新版Nginx處理

kill -WINCH cat /apps/nginx/logs/nginx.pid.oldbin

退出老的進(jìn)程

kill -QUIT cat /apps/nginx/logs/nginx.pid.oldbin

項(xiàng)目標(biāo)題: nginx平滑升級(jí)

1.項(xiàng)目背景(版本過(guò)舊,添加新模塊)

2.項(xiàng)目目標(biāo)

3.項(xiàng)目實(shí)現(xiàn)過(guò)程(原理、步驟)

4.項(xiàng)目結(jié)果

nginx配置文件

worker_processes auto; 自動(dòng)匹配cpu核數(shù)

root@server01:/etc/nginx# ps axo pid,cmd,psr |grep nginx

worker_cpu_affinity 0001 0010; 綁定cpu #防止緩存失效#將Nginx工作進(jìn)程綁定到指定的CPU核心,默認(rèn)Nginx是不進(jìn)行進(jìn)程綁定的,綁定并不是意味著當(dāng)前nginx進(jìn)程獨(dú)占以一核心CPU,但是可以保證此進(jìn)程不會(huì)運(yùn)行在其他核心上,這就極大減少了nginx的工作進(jìn)程在不同的cpu核心上的來(lái)回跳轉(zhuǎn),減少了CPU對(duì)進(jìn)程的資源分配與回收以及內(nèi)存管理等,因此可以有效的提升nginx服務(wù)器的性能。

nginx 的master 進(jìn)程是root運(yùn)行,work進(jìn)程是普通用戶運(yùn)行, 因?yàn)閚ginx端口80是特權(quán)端口小于1023,只能用root運(yùn)行

worker_connections 2048; #所有worker進(jìn)程能打開(kāi)的文件數(shù)量上限,包括:Nginx的所有連接(例

如與代理服務(wù)器的連接等),而不僅僅是與客戶端的連接,另一個(gè)考慮因素是實(shí)際的并發(fā)連接數(shù)不能超過(guò)系統(tǒng)級(jí)

別的最大打開(kāi)文件數(shù)的限制.最好與ulimit -n 或者limits.conf的值保持一致,

這是一些常見(jiàn)的 Nginx 配置指令,用于設(shè)置代理請(qǐng)求的頭部信息。

  • proxy_set_header Host $http_host; 設(shè)置代理請(qǐng)求的 Host 頭部為客戶端的請(qǐng)求 Host 頭部值。
  • proxy_set_header X-Real-IP $remote_addr; 設(shè)置代理請(qǐng)求的 X-Real-IP 頭部為客戶端的真實(shí) IP 地址。
  • proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 設(shè)置代理請(qǐng)求的 X-Forwarded-For 頭部,將客戶端的 IP 地址追加到該頭部中,以表明客戶端的真實(shí) IP 地址。
  • proxy_set_header X-Forwarded-Proto $scheme; 設(shè)置代理請(qǐng)求的 X-Forwarded-Proto 頭部為請(qǐng)求的協(xié)議(HTTP 或 HTTPS)。

這些配置指令通常用于反向代理服務(wù)器的配置,用于將客戶端請(qǐng)求轉(zhuǎn)發(fā)給后端服務(wù)器,并在請(qǐng)求頭部中傳遞一些關(guān)鍵的信息。

好奇,開(kāi)心

sendfile on; 提示性能

#tcp_nopush on; #在開(kāi)啟了sendfile的情況下,合并請(qǐng)求后統(tǒng)一發(fā)送給客戶端,必須開(kāi)啟sendfile,但會(huì)延遲

server_tokens off; 不顯示版本
包含

nginx虛擬主機(jī)

vi /conf/nginx.conf

include /apps/nginx/conf/conf.d/*; #添加

外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳

root@server01:/apps/nginx/conf/conf.d# cat www.luohw.org
server {
listen 8889;
server_name www.luohw.org;
root /apps/nginx/html/pc;

}
root@server01:/apps/nginx/conf/conf.d# cat m.luohw.org
server {
listen 8889;
server_name m.luohw.org;
root /apps/nginx/html/mobile;

}

配置文件在前的優(yōu)先級(jí)高

server 塊

alias和root的區(qū)別?

root是定義根的

location /about  {  #相當(dāng)于訪問(wèn)/opt/pc/aaa/alias /opt/pc/aaa/;}location /about  {   #/opt/pc/aaa/about/root /opt/pc/aaa/;}server {listen  8889;server_name www.luohw.org;location / {root /apps/nginx/html/pc;}location /about  {
root /opt/pc/aaa/;
}
curl  www.luohw.org:8889/about222/  訪問(wèn) /opt/pc/aaa/about222/index.htmllocation /about/  {
root /opt/pc/aaa/;
}
curl  www.luohw.org:8889/about222/  訪問(wèn)/apps/nginx/html/pc/about222/index.html

location ^~ /about/ { 以什么開(kāi)頭

^~ 包含

^*

~* 包含,不區(qū)分大小寫(xiě)

#匹配優(yōu)先級(jí)從高到低:

=, ^~, /*, 不帶符號(hào)

配置密碼驗(yàn)證訪問(wèn)

htpasswd -cb /etc/nginx/conf.d/.nginx-user luo 123456

    auth_basic  "login password";auth_basic_user_file /etc/nginx/conf.d/.nginx-user;

指定密碼訪問(wèn)

curl -I -u luo:123456 zabbix.luo.com

自定義錯(cuò)誤頁(yè)面

#訪問(wèn)不存在會(huì)報(bào)404,就會(huì)訪問(wèn) /data/html/40x.html
error_page 404 /40x.html;
location = /40x.html {root /data/html/ ;}

檢測(cè)文件是否存在

location / {root   /usr/share/nginx/html;index  index.html index.htm;try_files $uri $uri/index.html  $uri/html  /index.html;   #訪問(wèn)url找不到就找$uri/index.html,最后找index.html
}

GET / HTTP/1.1
HOST: 192.168.1.150

下載文件配置

    location /down  {autoindex on;#自動(dòng)索引功能alias /apps/nginx/html/mobile/luo;#   autoindex_exact_size off;#計(jì)算文件確切大小(單位bytes),此為默認(rèn)值,off只顯示大概大小(單位kb、mb、gb)autoindex_localtime on;

#上傳一個(gè)包到nginx,太大會(huì)報(bào)413
root@server01:/apps/nginx/conf/conf.d# curl -T /root/mysql-8.0.33-linux-glibc2.28-x86_64.tar.gz http://120.77.146.92:8889/down/

413 Request Entity Too Large

413 Request Entity Too Large


nginx/1.24.0

上傳文件太大

修改參數(shù)
client_max_body_size 1m; #設(shè)置允許客戶端上傳單個(gè)文件的最大值,默認(rèn)值為1m,上傳文件超過(guò)此值會(huì)出413錯(cuò)誤

高價(jià)值展示生活

安全感建立

具備信息交換

興趣愛(ài)好,工作,職業(yè)

生活狀態(tài)

T / HTTP/1.1
HOST: 192.168.1.150

# 下載文件配置

    location /down  {autoindex on;#自動(dòng)索引功能alias /apps/nginx/html/mobile/luo;#   autoindex_exact_size off;#計(jì)算文件確切大小(單位bytes),此為默認(rèn)值,off只顯示大概大小(單位kb、mb、gb)autoindex_localtime on;

root@server01:/apps/nginx/conf/conf.d# curl -T /root/mysql-8.0.33-linux-glibc2.28-x86_64.tar.gz http://120.77.146.92:8889/down/

413 Request Entity Too Large

413 Request Entity Too Large


nginx/1.24.0

上傳文件太大

client_max_body_size 1m; #設(shè)置允許客戶端上傳單個(gè)文件的最大值,默認(rèn)值為1m,上傳文件超過(guò)此值會(huì)出413錯(cuò)誤

nginx高級(jí)配置

高價(jià)值展示生活

安全感建立

具備信息交換

興趣愛(ài)好,工作,職業(yè)

生活狀態(tài)

http://www.risenshineclean.com/news/41442.html

相關(guān)文章:

  • 平臺(tái)建設(shè)上線網(wǎng)站百度網(wǎng)盤(pán)app官網(wǎng)下載
  • 有官網(wǎng)建手機(jī)網(wǎng)站深圳網(wǎng)站建設(shè)公司
  • 南充響應(yīng)式網(wǎng)站建設(shè)2023年8月疫情又開(kāi)始了嗎
  • 網(wǎng)站建設(shè)注意要求怎么做app推廣
  • 蕪湖網(wǎng)站建設(shè)求職簡(jiǎn)歷互聯(lián)網(wǎng)營(yíng)銷(xiāo)外包推廣
  • 外貿(mào)網(wǎng)站如何做的好處成都網(wǎng)站制作費(fèi)用
  • 制造網(wǎng)站建設(shè)哪家好推廣網(wǎng)絡(luò)營(yíng)銷(xiāo)案例
  • 網(wǎng)站開(kāi)發(fā)詳細(xì)設(shè)計(jì)文檔十句經(jīng)典廣告語(yǔ)
  • 微信小程序網(wǎng)站建設(shè)哪家好高質(zhì)量?jī)?nèi)容的重要性
  • 有沒(méi)有專(zhuān)門(mén)做航拍婚禮網(wǎng)站小紅書(shū)seo排名帝搜軟件
  • 專(zhuān)業(yè)網(wǎng)站設(shè)計(jì)專(zhuān)家百度搜索排名服務(wù)
  • 天津網(wǎng)站建設(shè)服務(wù)好整合營(yíng)銷(xiāo)案例
  • 做網(wǎng)站需要用到ps嗎qq推廣網(wǎng)站
  • 怎么做局域網(wǎng)asp網(wǎng)站如何讓自己網(wǎng)站排名提高
  • 專(zhuān)業(yè)網(wǎng)站制作的公司網(wǎng)絡(luò)賺錢(qián)推廣
  • 佛山企業(yè)做網(wǎng)站拉新充場(chǎng)app推廣平臺(tái)
  • 做曖曖視頻網(wǎng)站安全嗎it培訓(xùn)機(jī)構(gòu)哪個(gè)好一點(diǎn)
  • 做網(wǎng)站的服務(wù)器怎么選網(wǎng)店代運(yùn)營(yíng)十大排名
  • 網(wǎng)站開(kāi)發(fā)的關(guān)鍵計(jì)算機(jī)資源計(jì)劃寧德市疫情
  • b s模式的網(wǎng)站開(kāi)發(fā)用網(wǎng)站模板建站
  • 百度個(gè)人網(wǎng)站申請(qǐng)seo廣告投放是什么意思
  • 佛山做網(wǎng)站3000自己網(wǎng)站怎么推廣
  • wordpress添加郵件輸入列表廈門(mén)網(wǎng)站優(yōu)化公司
  • dede網(wǎng)站qq類(lèi)源碼百度快照下載
  • 即時(shí)通訊網(wǎng)站開(kāi)發(fā)源碼手機(jī)百度瀏覽器
  • 怎么做網(wǎng)絡(luò)銷(xiāo)售的網(wǎng)站國(guó)內(nèi)新聞
  • 靜態(tài)企業(yè)網(wǎng)站模板目前最靠譜的推廣平臺(tái)
  • 西安最好的網(wǎng)站建設(shè)公司品牌推廣思路
  • 做簡(jiǎn)圖的網(wǎng)站網(wǎng)絡(luò)營(yíng)銷(xiāo)專(zhuān)業(yè)代碼
  • 一個(gè)公司設(shè)計(jì)網(wǎng)站怎么做近三天發(fā)生的大事