Nginx伺服器高階

2021-08-29 23:14:30 字數 4198 閱讀 8983

1.基本的配置

# 修改配置檔案需要重啟伺服器

}}

這種反向**可以實現 把 http 轉換成更安全的 https 的方案

2.其它配置

**其他的伺服器

# 修改配置檔案需要重啟伺服器

}}

瀏覽器訪問: 反向**後變成請求 最終獲取到結果.

位址列沒有變還是

**同一臺伺服器的同乙個埠

# 修改配置檔案需要重啟伺服器

}# 2.建立第二個虛擬主機(虛擬主機名稱為:www.new.liujun.com)

server

}}

瀏覽器訪問: 顯示的是new專案的網頁

位址列沒有變還是

1.動態資源 :api介面 、檔案 、壓縮包 、軟體 、 .jsp 、.php 、.shtml 、.ejs 等等

2.靜態資源:html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css

# 修改配置檔案需要重啟伺服器

# 2.靜態資源的載入。匹配以.html 、.htm 、.gif、.jpg、.jpeg結尾的請求

# ( ~ 表示匹配 uri 時是字母大小寫敏感的; ~* 大小寫不敏感; \. 是轉譯.

}}

上面兩個 location 配置快是並列關係

1)瀏覽器訪問: 反向**到: 這個**( 位址列不變 )

2)瀏覽器訪問: 反向**到 :/api/4/news/latest 這個api 介面

由於 nginx 具有「強悍」的高併發高負載能力,因此一般會作為前端的伺服器直接向客戶端提供靜態檔案服務。但也有一些複雜、多變的業務不適合放到 nginx 伺服器上,這時會用apache、tomcat 等伺服器來處理。於是nginx 通常會被配置為既是靜態 web 伺服器也是反向**伺服器,不適合 nginx 處理的請求就會直接**到上游伺服器中處理。而upstream 塊定義了乙個上游伺服器的集群,便於反向**中的 proxy_pass 使用。

# 修改配置檔案需要重啟伺服器

# 1.建立虛擬主機(主機名稱為:www.liujun.com)

}# 2.建立虛擬主機(主機名稱為:www.liujun.com)

server

}# 3.建立虛擬主機(主機名稱為:www.liujun.com)

server

}}

1)瀏覽器訪問:index.html 訪問的blog專案

2)瀏覽器訪問: 訪問的是new 專案 或者 是music專案

真實環境中負載均衡backend_api_service裡面配的都是同乙個專案發布在不同的伺服器上

user  liujun liu;

# 1.nginx worker 程序個數 (啟動程序數,通常和cpu的數量相等)

worker_processes 8;

# 2.繫結 nginx worker 程序到指定的 cpu 核心。( 為每個程序分配cpu,上例將8個程序分配到8個cpu,

# 當然可以寫多個,或者將乙個程序分配到多個cpu )

worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;

#3.*指定 nginx worker 程序可以開啟的最大控制代碼描述符個數。( 指當乙個nginx程序開啟的最多檔案描述數目,

# 理論應該是最多開啟檔案數 ulimit -n 與 nginx程序數相除,但是nginx分配請求並不是那麼均勻,

# 所以最好以ulimit -n的值保持一致 )

worker_rlimit_nofile 102400;

# 4.全域性error 日誌的設定(語法:error_log /path/file level;)

# 錯誤等級level[ debug | info | notice | warn | error | crit ]

# error_log logs/error.log; # 這種寫法nginx啟動失敗,要編寫全路徑,並且該檔案要存在(如下寫法)

error_log /usr/local/etc/nginx/logs/error.log error;

error_log /usr/local/etc/nginx/logs/error.log info;

# 5.pid 檔案的路徑( 儲存 master 程序 id 的 pid 檔案存放路徑,例如:/usr/local/nginx/nginx.pid )

pid /usr/local/etc/nginx/logs/nginx.pid; # 要編寫全路徑,並且該檔案要存在

# 2.錯誤碼404跳轉的頁面

error_page 404 /404.html;

# 3.定義錯誤提示頁面(錯誤碼404跳轉的頁面)

error_page 500 502 503 504 /50x.html;

location = /50x.html

location /nginxstatus

}}

nginx高階伺服器配置

當每個網路介面接收資料報的速度比核心處理這些包的快,允許傳送到佇列的資料報的最大數 一般預設128 用於調節系統同時發起的tcp連線數 一般預設128 如果該值太小,在併發的時候會造成鏈結超時或者重傳問題 配置系統中最多允許存在多少個tcp套接字不被關聯到任何乙個使用者檔案控制代碼上。如果超過這個數...

nginx伺服器的高階配置

1 針對ipv4的核心的引數的配置優化 將引數的值最佳到linux系統的 etc sysctl.conf檔案中,然後使用如下命令使修改生效 sbin sysctl p常用的引數 1.1 net.core.netdev max backlog引數 當每個網路介面接收資料報的速率比核心處理這些包的速率快...

Nginx伺服器的高階配置

將下面的核心引數得到值追加到linux系統的 etc sysctl.conf sbin sysctl pnet.core.netdev max backlog 262114net.core.somaxconn 262144net.ipv4.tcp max orphans 262144net.ipv4...