Nginx--進階篇(實踐)
Nginx實踐篇
靜態資源WEB服務
1.什麼是靜態資源:
非伺服器動態執行生成的檔案
2、靜態資源服務場景
3、配置語法-檔案讀取
Syntax: sendfile on|off
Default: sendfile off;
Context: http,server.location, if in location
Syntax: tcp_nopush on|off
Default: tcp_nopush off;
Context: http,server.location
作用: sendfile 開啟的情況下, 提高網路包的傳輸效率
Syntax: tcp_nodelay on|off
Default: tcp_nodelay off;
Context: http,server.location
作用: keepalive連線下, 提高網路包的傳輸實時性
Syntax :gzip on|off
Default: tcp_nodelay off;
Context: http,server.location if in location
作用: 傳輸過程的包的壓縮
Syntax :gzip_comp_level ;
Default: gzip_comp_level 1 ;
Context: http,server,location, if in location
作用: 設定壓縮比
Syntax : gzip_http_version 1.0|1.1;
Default: gzip_http_version 1.1 ;
Context: http,server.location
作用: 設定壓縮的版本
4、擴充套件Nginx壓縮模組
http_gzip_static_module 預讀模組
http_gunzip_module 應用支援gunzip的壓縮方式
5、 跨站/跨域訪問(CSRF為了防止出現)
syntax: add_header name value [always] ;
default: –
context: http,server,location, if in location
建議對origin做設定, 只允許特定的站點進行訪問
6、防盜鏈(基礎版)
首要方式: 區別哪些請求是非正常的使用者請求
1)、基於http_refer防盜鏈模組配置
代理服務
代理協議型別:
正向代理:
配置語法
Syntax: proxy_pass_url; 反向代理
Default–
Context:location, if in location, limit except
可以在location新增IP語法判斷
Syntax: proxy_buffering on|off 緩衝區配置
Default: proxy_buffering on;
Context: http,server,location
擴充套件配置: proxy_buffer_size proxy_buffer、proxy_busy_buffers_size
Syntax: proxy_redirect default 跳轉重定向(需要把地址進行重寫的時候)
proxy_redirect off ; proxy_redirect redirect replacement
Default: proxy_redirect default ;
Context:http,server,location
Syntax: proxy_set_header field value; 頭資訊配置
Default: proxy_set_header Host $ proxy_host;
proxy_set_header Connetiom close;
Context: http,server,location
擴充套件配置: proxy_hide_header、proxy_set_body
常用配置:
X-Real-IP $remote_addr 獲取使用者的真實IP
注: 可以使用include #fileName 進行直接引入配置檔案, 增減檔案的可用性
負載均衡排程器SLB
GSLB
nginx屬於七層負載均衡的SLB
Syntax: upstream name {…}
Default:–
Context: http
案例:
weigth是加權輪詢, 七個請求有五個可以命中第五個
ip_hash能夠根據ip訪問同一個後端的機器, 但是這樣會出現問題:
url_hash:
Syntax: hash key [consistent]
default:–
Context: upstream
動態快取
快取服務: 相當於當nginx具有快取的時候就不需要去服務端請求服務了
配置語法:
Syntax: proxy_cache zone |off ; #快取地址配置
Default: proxy_cache off;
Context: http, server, location
Syntax: proxy_cache_vaild [code…] time; #快取週期控制
Default: –
Context: http, server, location
syntax: proxy_cache_key string; #快取的緯度
Default: proxy_cache_key
s
c
h
e
m
e
scheme
schemeproxy_host$request_u
Context: http, server, location
相關文章
- Typescript 進階與實踐(一)TypeScript
- React 進階二-元件最佳實踐React元件
- 前端監控進階篇 — Sentry 監控 Next.js 專案實踐前端JS
- 效能測試進階實踐篇:10分鐘教你使用JMeter進行websocket測試!JMeterWeb
- Docker進階與實踐之七:LibcontainerDockerAI
- Docker進階與實踐之二:NamespaceDockernamespace
- Docker進階與實踐之一:CgroupDocker
- 一份針對於新手的多執行緒實踐--進階篇執行緒
- Scala隱式轉換理論及進階實踐-Coding技術進階實戰
- Docker進階與實踐之三:Docker映象Docker
- Linux Capabilities 入門教程:進階實戰篇Linux
- 【webpack 系列】進階篇Web
- React進階篇2React
- React進階篇1React
- Docker進階與實踐之六:容器卷管理Docker
- 自定義View事件篇進階篇(二)-自定義NestedScrolling實戰View事件
- JVM效能調優與實戰進階篇-上JVM
- 《MySQL 進階篇》二十:鎖MySql
- 樹莓派-進階篇樹莓派
- python網路進階篇Python
- 介面測試進階篇
- ECS進階Day03:SLB負載均衡實踐負載
- Docker進階與實踐之五:Docker網路LibnetworkDocker
- Docker進階與實踐之四:Docker映象倉庫Docker
- 【進階篇】Redis實戰之Jedis使用技巧詳解Redis
- fx 框架上手 - 進階篇框架
- web前端進階篇(一 )JSWeb前端JS
- c-指標進階篇指標
- 【資料庫】Redis進階篇資料庫Redis
- Android面試題——進階篇Android面試題
- Dagger2進階篇(二)
- Flink 實踐教程-進階(2):複雜格式資料抽取
- JavaEE進階知識學習-----SpringCloud(二)實踐準備JavaSpringGCCloud
- Java面試題中高階進階(JVM篇01)Java面試題JVM
- Apache Flink 進階(三):Checkpoint 原理解析與應用實踐Apache
- Vuejs進階知識(二十一)【生命週期,最佳實踐】VueJS
- 跨域-實踐篇跨域
- 《MySQL 進階篇》十四:效能分析工具MySql