Nginx 配置檔案

2021-09-25 08:56:04 字數 3703 閱讀 6633

1.1. 啟用虛擬主機配置:

vim /opt/nginx/conf/nginx.conf

刪除server 主機配置檔案,增加include vhost/*.conf;

1.2. 建立虛擬主機配置存放目錄:mkdir /opt/nginx/conf/vhost

1.3. 建立虛擬主機配置:

cd !$; vim default.conf

server

2.1. 安裝http

yum install -y httpd(用來建立使用者、密碼)

2.2. 建立使用者、密碼

htpasswd -c /opt/nginx/conf/htpasswd admin(執行『htpasswd』建立使用者名稱、密碼時,不能在使用者名稱、密碼存放的目錄下執行該命令;這裡不能在『conf』目錄下執行『htpasswd』)

2.3. 虛擬主機中的配置

location /        # 作用整個**:「/」,作用某個目錄: 「/admin/」,作用某個url:"~ admin.php" ~匹配

3.1. 更改虛擬主機配置檔案,如:test.com.conf

server

}

4.1. 主配置檔案「nginx.conf」中搜尋「log_format」,這個是定義log樣式的;預設日誌樣式如下:

4.2. 日誌引數說明:

4.3. 虛擬主機日誌配置

除了在主配置檔案「nginx.conf」裡定義日誌格式外,還需要在虛擬主機配置檔案中增加:access_log /tmp/1.log combined_realip;

這裡的「combined_realip」就是在nginx.conf中定義的日誌格式名字;

curl -x127.0.0.1:80 test.com -i

cat /tmp/1.log

5.1. 自定義shell 指令碼,用於日誌切割;

vim /usr/local/sbin/nginx_log_rotate.sh//寫入如下內容

#! /bin/bash

## 假設nginx的日誌存放路徑為/data/logs/

d=`date -d "-1 day" +%y%m%d`

logdir="/data/logs"

nginx_pid="/usr/local/nginx/logs/nginx.pid"

cd $logdir

for log in `ls *.log`

do mv $log $log-$d

done

/bin/kill -hup `cat $nginx_pid`

5.2. 任務計畫

crontab -e

新增定時任務

0 0 * * * /bin/bash /usr/local/sbin/nginx_log_rotate.sh

6.1. 具體配置如下:

7.1. 配置如下,可以和上面的配置結合起來

access_log off; # 關閉日誌記錄

}8.1. 需求:訪問/admin/目錄的請求,只允許某幾個ip訪問,配置如下:

location /admin/

8.2. 可以匹配正則

location ~ .*(abc|image)/.*\.php$   

8.3. 根據user_agent限制

9.1. 配置如下:

location ~ \.php$

10.1. nginx **示意圖:

10.2. nginx **配置:

cd /usr/local/nginx/conf/vhost

vim proxy.conf//加入如下配置

server

}

負載均衡配置:

vim /usr/local/nginx/conf/vhost/load.conf// 寫入如下內容

upstream qq_com    #  「upstream」來指定多個「web server」

server

}

nginx 不支援** https ;但可以在nginx**上設定https 監聽

12.1. ssl工作流程

瀏覽器傳送乙個https的請求給伺服器;

伺服器要有一套數字證書,可以自己製作(後面的操作會具體介紹),也可以向組織申請,區別就是自己頒發的證書需要客戶端驗證通過,才可以繼續訪問,而使用受信任的公司申請的證書,則不會彈出》提示頁面,這套證書其實就是一對公鑰和私鑰;

伺服器會把公鑰傳輸給客戶端;

客戶端(瀏覽器)收到公鑰後,會驗證其是否合法有效,無效會有警告提醒,有效則會生成一串隨機數,並用收到的公鑰加密;

客戶端把加密後的隨機字串傳輸給伺服器;

伺服器收到加密隨機字串後,先用私鑰解密(公鑰加密,私鑰解密),獲取到這一串隨機數後,再用這串隨機字串加密傳輸的資料(該加密為對稱加密,所謂對稱加密,就是將資料和私鑰也就是這個隨機字串》通過某種演算法混合在一起,這樣除非知道私鑰,否則無法獲取資料內容);

伺服器把加密後的資料傳輸給客戶端;

客戶端收到資料後,再用自己的私鑰也就是那個隨機字串解密;

12.2 ssl 工作示意圖

12.3. 生成ssl金鑰對

12.4. nginx配置 ssl

server

nginx配置檔案

執行使用者 user nobody nobody 啟動程序 worker processes 2 全域性錯誤日誌及pid文件 error log logs error.log notice pid logs nginx.pid 工作模式及連線數上限 events 設定http伺服器,利用他的反向 功...

nginx 配置檔案

ps nginx使用有兩三年了,現在經常碰到有新使用者問一些很基本的問題,我也沒時間一一回答,今天下午花了點時間,結合自己的使用經驗,把nginx的主要配置引數說明分享一下,也參考了一些網路的內容,這篇是目前最完整的nginx配置引數中文說明了。更詳細的模組引數請參考 定義nginx執行的使用者和使...

Nginx 配置檔案

2 配置詳解 3 配置備份 nginx 配置檔案主要分為六個區域 nginx worker 程序的執行使用者以及使用者組,預設由 nobody 賬號執行。user nobody nginx 要開啟的子程序數。每個 nginx 程序平均耗費 10m 12m 記憶體,一般指定 1 個程序就足夠了。若是多...