Nginx(簡潔版)

基本配置

worker_processes 1; //默認為1,表示開啟一個業務進程
events //事件驅動模塊(){worker_connections 1024; //單個業務進程可接受連接數
}
http{include mime.types; // 引入http mime類型(在外部已經定義好,解析文件的方式)default_type application/octet-stream; //如果沒有在mime.types指定的類型,按照default_type解析sendfile on;  //數據零拷貝keepalive_timeout 65; //server { //虛擬主機vhost,一個nginx可以運行多個主機,并且相互之間不干擾listen 80;  //監聽的端口號server_name localhost; // 域名或主機名// 重點,下面再說 location / {root html; index index.html index.htm;}eror_page 500 502 503 504 /50x.html; //報錯轉向location = /50x.html{root html; // 重定向}}
}

虛擬主機與域名解析

電腦拿到IP地址之后,會發起TCP/IP請求,

ServerName匹配規則

  1. 我們可以在統一servername中匹配多個域名
  2. 完成匹配
  3. 通配符匹配
  4. 通配符結束匹配
  5. 正則匹配

正向,反向代理

下面是一張正向代理的示例,是用戶與服務器主動想要連接外網
在這里插入圖片描述
下面是反向代理的示例。是由服務方主動提供代理,所以叫反向代理
夏
網關其實就是代理服務器,特點是需要中轉,所以網關的帶寬限制會影響上傳與下載的速度
像這種進出都要經過代理服務器(網關)的叫做隧道式代理,但是有一種性能更高的代理模式叫lvs(DR模型),他上傳需要經過代理服務器,但是連接建立后便從服務方直接連接發起方

 location / {// proxy_pass與root二選一proxy_pass 	http://www.xxxx1.com; //代理到域名# root html; # index index.html index.htm;
}

使用負載均衡,代理到多個ip

// 與server平級
upstream httpds{server xxx1:80; // weight=8 可以附加權重,改變負載均衡策略 down表示下線 backup表示備用server xxx2:80; // weight=2 
}location / {// proxy_pass與root二選一proxy_pass 	http:/httpds; # root html; # index index.html index.htm;
}

動靜分離

 location / {proxy_pass 	http://www.xxxx1.com; //代理到域名
}location /css {root html;index index.html index.htm;
}location /js {root html;index index.html index.htm;
}location /img {root html;index index.html index.htm;
}

上面的書寫方式過于麻煩,我們也可以使用正則表達式

 location ~*/(js|css|img) {root html;index index.html index.htm;
}

rewrire

 location / {rewrite ^/([0-9]+).html$ /index?pageNum=$1 break; proxy_pass 	http://www.xxxx1.com; //代理到域名
}

防盜鏈

valid_referers none | blocked | server_names | strings

  1. none:檢測Referer頭域不存在的情況
  2. blocked:檢測Referer頭域的值被防火墻或者代理服務器刪除或偽裝的情況,這種情況該頭域的值以http://或者https://開頭
  3. server_names:設置一個或多個URL,檢測Referer頭域的值是否是這些URL中的某一個
 location ~*/(js|css|img) {valid_referers xxxx;root html;if($valid_referer){return 403}index index.html index.htm;
}

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

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

相關文章

Java數組——冒泡排序

冒泡排序是最出名的排序算法之一,總共有八大排序。 冒泡排序代碼并不復雜,共兩層循環,外層冒泡輪數,里層依次比較。 算法步驟: 1. 比較數組中兩個相鄰元素,如果第一個元素比第二個元素大,交換…

如何在huggingface上申請下載使用llama2/3模型

1. 在對應模型的huggingface頁面上提交申請 搜索對應的模型型號 登錄huggingface,在模型詳情頁面上,找到這個表單,填寫內容,提交申請。需要使用梯子,country填寫梯子的位置吧(比如美國) 等待一小時左右…

SEMI啟動SiC專有技術項目

公司鄭重聲明,其正致力于篩選那些能夠穩定輸出、且可重復使用的關鍵參數性能。SEMI,這家SiC領域的佼佼者,已經啟動了一項獨具匠心的專有技術(KGD)篩選程序。該程序旨在為客戶提供高品質的、經過嚴格電氣分類與光學檢驗…

基于python的旅游爬蟲可視化與實現

摘要 本項目為基于python的旅游爬蟲可視化的設計與實現,項目以Web系統形式展示,利用Xpath爬蟲爬取去哪兒網針對旅游業的需求,對國內熱門旅游景點數據可視化系統,將爬取好的數據保存為CSV文件,再通過ORM框架導入MySQL數…

Python圖形界面(GUI)Tkinter筆記(五):控件的定位(3)

Tkinter(GUI)設計圖形界面時有三種控件的包裝方法去定位各控件在窗口(父容器、根窗口)上的位置。 【1】pack()方法:用方位來定位位置,類似于Word文檔中的文字對齊方式。 【2】grid()方法:用二維表格式的坐標值定位,類似于EXCEL單元格坐標。 【3】place()方法:用窗口…

VUE基礎之,ref屬性,props配置項,mixin(混入)

ref屬性 被用來給元素或子組件注冊引用信息&#xff08;id的替代者&#xff09; 應用在html標簽上獲取的是真實DOM元素&#xff0c;應用在組件標簽上是組件實例對象&#xff08;vc&#xff09; 使用方式&#xff1a; 打標識&#xff1a;<h1 ref"xxx">.....&l…

【python量化交易】qteasy使用教程07——創建更加復雜的自定義交易策略

創建更加復雜的自定義交易策略 使用交易策略類&#xff0c;創建更復雜的自定義策略開始前的準備工作本節的目標繼承Strategy類&#xff0c;創建一個復雜的多因子選股策略策略和回測參數配置&#xff0c;并開始回測 本節回顧 使用交易策略類&#xff0c;創建更復雜的自定義策略 …

Mysql 多表查詢,內外連接

內連接&#xff1a; 隱式內連接 使用sql語句直接進行多表查詢 select 字段列表 from 表1 , 表2 where 條件 … ; 顯式內連接 將‘&#xff0c;’改為 inner join 連接兩個表的 on select 字段列表 from 表1 [ inner ] join 表2 on 連接條件 … ; select emp.id, emp.name, …

應急響應篇——加固

Linux 安全配置 1.下載安裝安全軟件 2.取消Telnet登錄采用SSH方式并更改ssh服務端遠程登錄的配置 1)Telnet登錄協議是明文不加密不安全,所以采用更安全的SSH協議。 2)更改ssh服務端遠程登錄相關配置。 3.用戶管理相關 1)刪除不必要的用戶和用戶組。 2)用戶密碼管理…

Selenium 自動化 —— 一篇文章徹底搞懂XPath

更多關于Selenium的知識請訪問“蘭亭序咖啡”的專欄&#xff1a;專欄《Selenium 從入門到精通》 文章目錄 前言 一、什么是xpath&#xff1f; 二、XPath 節點 三. 節點的關系 1. 父&#xff08;Parent&#xff09; 2. 子&#xff08;Children&#xff09; 3. 同胞&#xff08;S…

力扣:48. 旋轉圖像(Java)

目錄 題目描述&#xff1a;輸入&#xff1a;輸出&#xff1a;代碼實現&#xff1a; 題目描述&#xff1a; 給定一個 n n 的二維矩陣 matrix 表示一個圖像。請你將圖像順時針旋轉 90 度。 你必須在 原地 旋轉圖像&#xff0c;這意味著你需要直接修改輸入的二維矩陣。請不要 使…

LangChain:模型 I/O 封裝使用解析和感觸

目錄 模型 API&#xff1a;LLM vs. ChatModel OpenAI 模型封裝 多輪對話 Session 封裝 換個國產模型 模型的輸入與輸出 Prompt 模板封裝 PromptTemplate ChatPromptTemplate MessagesPlaceholder 從文件加載 Prompt 模板 TXT模板 Yaml模板 Json模板 輸出封裝 Out…

mediasoup源碼(一)編譯及部署

基本介紹 mediasoup是一個sfu架構的流媒體服務器&#xff0c;讀者可以根據需要選擇不同的編譯方式。如果只需要學習c流媒體傳輸部分&#xff0c;則選擇mediasoup&#xff0c;如果需要學習mediasoup整個demo&#xff0c;并做演示&#xff0c;則可以選擇mediasoup-demo&#xff…

is和==的關系

Python中is和的關系 is判斷兩個變量是不是指的是同一個內存地址&#xff0c;也就是通過id()函數判斷 判斷兩個變量的值是不是相同 a [1, 2, 3, 4] b [1, 2, 3, 4] print(id(a)) # 2298268712768 print(id(b)) # 2298269716992 print(a is b) # False print(a b) # Tr…

目標檢測標注工具Labelimg安裝與使用

目錄 一、安裝Labelimg與打開 二、使用 1、基本功能介紹 2、快捷鍵 3、狀態欄的工具 三、附錄 1、YOLO模式創建標簽的樣式 2、create ML模式創建標簽的樣式 3、PascalVOC模式創建標簽的樣式 一、安裝Labelimg與打開 labelimg是一款開源的數據標注工具&#xff0c;可以…

51基于單片機的溫室大棚系統設計

設計摘要&#xff1a; 本設計旨在基于51單片機和藍牙技術&#xff0c;實現一個功能完善的溫室大棚系統。該系統具備以下主要功能&#xff1a;首先&#xff0c;通過連接的顯示屏能夠實時地顯示當前的溫度和濕度信息&#xff0c;方便用戶了解溫室內的環境變化。其次&#xff0c;…

ctfshow web271--web273

web271 laravel5.7反序列化漏洞 define(LARAVEL_START, microtime(true));/* |-------------------------------------------------------------------------- | Register The Auto Loader |-------------------------------------------------------------------------- | |…

mysql IF語句,模糊檢索

使用MySQL IF語句完成條件檢索 IF(expr1,expr2,expr3)&#xff0c;expr1如果滿足條件就用expr2&#xff0c;否則用expr3 SELECTa.*,count(*) AS stdSum FROMidb_std_power_engin_v1 a WHERE1 1 AND (IF( KV IS NOT NULL, a.NAME REGEXP KV, 1 1 ) ORIF( KV IS NOT NULL, …

凸優化理論學習二|凸函數及其相關概念

系列文章目錄 凸優化理論學習一|最優化及凸集的基本概念 文章目錄 系列文章目錄一、凸函數&#xff08;一&#xff09;凸集&#xff08;二&#xff09;凸函數的定義及舉例&#xff08;三&#xff09;凸函數的證明1、將凸函數限制在一條直線上2、判斷函數是否為凸函數的一階條件…

如何做筆記

鏈接&#xff1a; 程序員讀技術類書籍如何做筆記&#xff1f; - 知乎 我是如何寫好一篇技術博客的 - 簡書 技術博客&#xff0c;該寫些什么&#xff1f; - 知乎 前言 最近翻翻以前的博客和筆記&#xff0c;都覺得寫的不好。工作這么多年&#xff0c;其實一直都有想做成知識系列…