Nginx最常用的指令

服務管理

sudo systemctl status nginx # nginx當前狀態
sudo systemctl reload nginx # 重新加載 nginx
sudo systemctl restart nginx # 重啟nginxsudo nginx -t   # 檢查語法
nginx           # 啟動
nginx -s reload # 重啟
nginx -s stop   # 關閉進程
nginx -s quit   # 平滑關閉nginx
nginx -V        # 查看nginx的安裝狀態,

Docker 安裝

docker run --name some-nginx -v /some/content:/usr/share/nginx/html:ro -d nginx

簡單代理

location / {proxy_pass http://127.0.0.1:3000;proxy_redirect      off;proxy_set_header    Host $host;
}

全局變量

$args

這個變量等于請求行中的參數,同 $query_string

$remote_port

客戶端的端口

$content_length

請求頭中的 Content-length 字段

$remote_user

已經經過 Auth Basic Module 驗證的用戶名

$content_type

請求頭中的 Content-Type 字段

$request_filename

當前請求的文件路徑,由 root 或alias指令與URI請求生成

$document_root

當前請求在 root 指令中指定的值

$scheme

HTTP方法(如http,https)

$host

請求主機頭字段,否則為服務器名稱

$hostname

主機名

$http_user_agent

客戶端agent信息

$http_cookie

客戶端cookie信息

$server_protocol

請求使用的協議,通常是HTTP/1.0或HTTP/1.1

$server_addr

服務器地址,在完成一次系統調用后可以確定這個值

$server_name

服務器名稱

$server_port

請求到達服務器的端口號

$limit_rate

這個變量可以限制連接速率

$request_method

客戶端請求的動作,如 GET/POST

$request_uri

包含請求參數的原始URI,不包含主機名,如:/foo/bar.php?arg=baz

$remote_addr

客戶端的IP地址

$uri

不帶請求參數的當前URI,$uri不包含主機名,如 /foo/bar.html

$document_uri

與 $uri 相同

$nginx_version

nginx 版本

更多全局變量查看官方文檔

監聽端口

server {listen 80;      # 標準 HTTP 協議listen 443 ssl; # 標準 HTTPS 協議listen 443 ssl http2; # 對于 http2listen [::]:80; # 使用 IPv6 在 80 上收聽# 僅收聽使用 IPv6listen [::]:80 ipv6only=on;
}

域名 (server_name)

server {# 監聽 example.comserver_name example.com;# 監聽多個域server_name example.com www.example.com;# 監聽所有子域server_name *.example.com;# 監聽所有頂級域server_name example.*;# 監聽未指定的主機名(監聽 IP 地址本身)server_name "";
}

負載均衡(簡單實例)

upstream node_js {server 0.0.0.0:3000;server 0.0.0.0:4000;server 127.155.142.421;
}

負載均衡(權重)

upstream test {server localhost:8080 weight=9;server localhost:8081 weight=1;
}

upstream ip_hash

upstream test {ip_hash;server localhost:8080;server localhost:8081;
}

解決負載均衡 session 的問題

upstream fair

upstream backend {fair;server localhost:8080;server localhost:8081;
}

響應時間短的優先分配

server 可選參數

weight

訪問權重數值越高,收到請求越多

fail_timeout

指定的時間內必須提供響應

max_fails

嘗試失敗服務器連接的最大次數

down

標記一個服務器不再接受任何請求

backup

有服務器宕機,標記的機器接收請求

配置示例

upstream test {server 127.0.0.1:83 weight=9; # 權重server 127.0.0.1:83 weight=1; # 權重# 失敗超時時間server 127.0.0.1:83 max_fails=3;server 127.0.0.1:83 weight=3 down;
}

upstream url_hash

upstream backend {hash $request_uri;hash_method crc32;server localhost:8080;server localhost:8081;
}

按訪問url的hash結果來分配請求

upstream keepalive

upstream memcached_backend {server 127.0.0.1:11211;server 10.0.0.2:11211;keepalive 32;
}

激活緩存以連接到上游服務器

子文件夾中的代理

location /folder/ { # / 很重要!proxy_pass http://127.0.0.1:3000/; # / 很重要!proxy_redirect      off;proxy_set_header    Host            $host;proxy_set_header    X-Real-IP       $remote_addr;proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/719323.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/719323.shtml
英文地址,請注明出處:http://en.pswp.cn/news/719323.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Java學習筆記002——類的修飾符

在Java語言中,類的訪問修飾符決定了其它類能夠訪問該類的方式。類有如下4種訪問修飾符,在創建類時用于類的聲明: 1、public: 當一個類被聲明為public時,它可以從任何其他類中被訪問,無論這些類位于哪個包中。通常&am…

uniapp使用vue3語法構建自定義導航欄,適配小程序膠囊

具體代碼 <template><view class"nav-wrapper-container" :style"height:navBarHeight px"><view class"nav-status-container" :style"height:navstatusBarHeight px;" /><view v-if"isCustom" clas…

數字化轉型導師堅鵬:BLM證券公司數字化轉型戰略

BLM證券公司數字化轉型戰略 ——以BLM模型為核心&#xff0c;實現知行果合一 課程背景&#xff1a; 很多證券公司存在以下問題&#xff1a; 不知道如何系統地制定證券公司數字化轉型戰略&#xff1f; 不清楚其它證券公司數字化轉型戰略是如何制定的&#xff1f; 不知道…

Redis 淘汰策略、持久化、高可用

淘汰策略 只有 redis 內存空間已滿并且往里面寫新數據&#xff0c;才會觸發淘汰策略。通過 expire / / /pexpire 讓 key-value 過期&#xff0c;從而讓 redis 清除這個 key-value。value 的數據結構typedef struct redisObject {unsigned tpye:4;unsigned encoding:4;// 判斷哪…

個人數倉開發面試題記錄

一.廣州電商公司 1.簡單自我介紹 2.介紹下之前的公司離線數倉項目 3.mysql和hive區別&#xff1f; 4.sql的執行順序&#xff1f; 5.hive的優化 6.說下你之前公司來&#xff0c;你的技能層次在每個公司&#xff1f;你怎么評價你的技能&#xff1f; 7.你的之前業務主要是做什么&…

Linux基礎命令[10]-cmp

文章目錄 1. cmp 命令說明2. cmp 命令語法3. cmp 命令示例3.1 不加參數3.2 -b&#xff08;顯示不同的字節&#xff09;3.3 -i&#xff08;跳過字節&#xff09;3.4 -l&#xff08;顯示所有不同&#xff09;3.5 -n&#xff08;比較n個字節&#xff09;3.6 -s&#xff08;不顯示信…

el-select 不能重復選擇

el-select 不能重復選擇&#xff0c;注意&#xff1a;刪除后可以再次重新被選擇 <el-form-item><el-select v-model"attribute.attributeSelect" change"changeSelect()" placeholder"請選擇屬性分組" clearable><el-optionv-fo…

PostgreSQL restartpoint 原理詳解

背景 大部分人對 PG 的 checkpoint 機制會熟悉一點&#xff0c;但是對 restartpoint 卻不太熟悉&#xff0c;網上介紹這方面的文章也比較少。因此&#xff0c;本文將以 PG 14.7 的社區代碼為基礎&#xff0c;介紹 PG 中的 restartpoint 機制。 原理介紹 什么是 restartpoint…

華為OD技術面試案例1-2024年

背景&#xff1a; 學校背景&#xff1a;211本科工作經驗&#xff1a;1年半轉行目標&#xff1a;測試崗位 一、機考 &#xff08;得分&#xff1a;350&#xff09; 二、01.04 hr面 自我介紹選擇東莞的原因對OD&#xff08;華為研發崗位&#xff09;的看法家庭情況簡歷相關問…

信息論筆記:信息量+熵+相對熵+交叉熵+損失函數

信息論 信息量 I(x) -log( P )I為信息量P為x發生的概率 熵 混亂程度的度量&#xff0c;不確定的局面表示很混亂系統里信息量的期望值H(x) -sum( P(i) * log( P(i) ) ) 相對熵(KL散度) 用于度量兩個概率分布間的差異性信息D_KL(S | O) sum( P_S(x) * log_2( 1 / P_O(x)…

Mysql學習之各種鎖

鎖 事務的隔離性由鎖來實現 MySQL并發事務訪問相同記錄 并發事務訪問相同記錄的情況大致可以分為3種&#xff1a; 讀-讀的情況 讀-讀情況&#xff0c;即并發事務相繼讀取相同的記錄。讀取操作本身不會對記錄由有任何的影響&#xff0c;并不會引起什么問題&#xff0c;所以允許…

簡要講解OV7725攝像頭

本文主要包含以下幾部分內容&#xff1a; 1. 通過OV7725分析模塊原理圖。 2. 講解部分寄存器的含義、RGB565格式圖像輸出時序、幀率計算。 3. 講解SCCB協議與I2C協議的區別。 1、OV7725功能 OV7725是一款1/4英寸單芯片圖像傳感器&#xff0c;其感光陣列達到640*480&#xff0c…

LibreOJ 137. 最小瓶頸路(加強版) 題解 Kruscal重構樹 ST表

聲明&#xff1a;本題目是LibreOJ 136. 最小瓶頸路 題解 最小生成樹 倍增加強版&#xff0c;建議先學習簡單版的做法。 題目鏈接&#xff1a;LibreOJ 137. 最小瓶頸路&#xff08;加強版&#xff09; 題目描述&#xff1a; 給定一張無向圖&#xff0c;詢問兩個結點之間的最小瓶…

【MySQL 系列】在 Windows 上安裝 MySQL

在 Windows 平臺上安裝 MySQL 很簡單&#xff0c;并不需要太復雜的步驟。按照本文的步驟操練起來就可以了。 文章目錄 1、下載 MySQL 安裝程序2、安裝 MySQL 數據庫2.1、選擇安裝類型2.2、檢查所需組件2.3、安裝所選產品組件2.4、產品配置2.5、配置高可用性2.6、配置服務器類型…

【leetcode】 劍指 Offer學習計劃(java版本含注釋)(下)

目錄 前言第十六天&#xff08;排序&#xff09;劍指 Offer 45. 把數組排成最小的數&#xff08;中等&#xff09;劍指 Offer 61. 撲克牌中的順子&#xff08;簡單&#xff09; 第十七天&#xff08;排序&#xff09;劍指 Offer 40. 最小的k個數&#xff08;簡單&#xff09; 第…

c++11多線程:call_once

文章目錄 call_once示例一示例二 call_once std::call_once是 C11 標準庫中的一個函數&#xff0c;用于確保某個函數只會被調用一次。 單例設計模式是一種常見的設計模式&#xff0c;用于確保某個類只能創建一個實例。由于單例實例是全局唯一的&#xff0c;因此在多線程環境中…

YOLO系列中的“data.yaml”詳解!

專欄介紹&#xff1a;YOLOv9改進系列 | 包含深度學習最新創新&#xff0c;主力高效漲點&#xff01;&#xff01;&#xff01; 一、data.yaml介紹 YOLO系列中的data.yaml文件包含了YOLO系列模型運行所需要的數據集路徑、數據集中的類別數及標簽。數據集路徑可以用絕對路徑也可以…

Python實現股票信息查詢

目前兩個常用的股票信息CPI&#xff1a; 騰訊行情CTPAPI接口源碼 新浪行情CTPAPI 使用requests模塊爬取股票信息&#xff0c;這里以查詢股票市值為例。 一、根據股票名稱查詢股票代碼 在python文件夾下設置兩個表格GPLIST.xlsx&#xff0c;其中是A股全部代碼和股票名稱&#…

如何在飛書接入ChatGPT并結合內網穿透實現公網遠程訪問智能AI助手

文章目錄 前言環境列表1.飛書設置2.克隆feishu-chatgpt項目3.配置config.yaml文件4.運行feishu-chatgpt項目5.安裝cpolar內網穿透6.固定公網地址7.機器人權限配置8.創建版本9.創建測試企業10. 機器人測試 前言 在飛書中創建chatGPT機器人并且對話&#xff0c;在下面操作步驟中…

MySQL 高可用解決方案(雙主雙從)

1.環境說明 操作系統&#xff1a;centos7.7 主服務器&#xff1a;node2(192.168.1.102) 從服務器&#xff1a;node3(192.168.1.103) keepalived中虛擬ip(VIP):192.168.1.100 2.準備事項 主庫和從庫數據庫的版本一致把主庫的數據同步給從庫一份 #對主庫進行全局讀鎖定 FLUSH…