1. 用lua自定義響應頭 header_filter_by_lua and header_filter_by_lua_file
header_filter_by_lua 'ngx.header["bruce"]="bruce"';
header_filter_by_lua 'ngx.header.foo="foo"';
注意header 有兩種格式
格式 ngx.header["變數"]=「值」
2.用nginx自己的格式定義響應頭 add_header key value
add_header foo foo;
3.增加請求頭 proxy_set_header
如:proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for;
增加請求頭 x-forwarded-for 值為 proxy_add_x_forwarded_for
proxy_add_x_forwarded_for 的值為 remote_addr 加 x_forwarded_for
詳解見4. 有**的情況下獲取客戶端ip的方法
以上2個語句實現
5.nginx的請求處理的11個階段:
nginx 處理請求的過程一共劃分為 11 個階段,按照執行順序依次是post-read、server-rewrite、find-config、rewrite、post-rewrite、preaccess、access、post-access、try-files、content以及log。
詳見:6.nginx 設定快取時間:expire
如expires 30d;
響應頭會出現 expires: 和 cache-control:max-ages=
7. 用lua 自定義變數和 不用lua 自定義變數
lua 自定義
nginx 自定義:
set $custom_log "-";
8.匹配原則 location and if 正規表示式
~* 不區分大小寫匹配 ~ 區分大小寫 ^$ 嚴格配置
^ 開頭匹配 $ 結尾匹配
9.error_page
error_page 500 502 503 504 =200 @jump_to_error;
返回@的頁面,狀態碼標為200。
error_page 500 502 503 504 @jump_to_error;
返回@頁面,狀態碼是前邊的5xx.
error_page 500 502 503 504 =@jump_to_error;
返回@頁面,狀態碼是@結果的狀態碼,注意,有空格,
@ 對應的是乙個location 如 location @retry {}
詳見:10.關於監聽的ip,埠和虛擬主機名的問題。
listen ip:port ;
server_name 「」; 代表是無網域名稱的訪問,目前預設是支援這個的,而 server_name _; 是指未定義的主機名的訪問,包含無主機名的訪問;
11.rewrite
rewrite ^/(.*)
詳見:
12.
allow,deny ip或網段,
日誌型別 路徑 級別
access_log path main;
error_log path error/debug;
more_clear_headers backend ;忽略響應頭 backend
13.upstream
upstream cache
location 裡配置 check_status; 頁面顯示upstream 的存活。
14.--with-http_image_filter_module 模組實現切圖
set $width "-";
set $height "-";
if ( $uri ~ "@w_(\d+),h_(\d+)" )
image_filter resize $width $height;
設定長寬, 取值,然後設定等比例 resize 還是 等寬高 crop
Nginx配置詳解
nginx的主要配置檔案是nginx.conf,位於安裝目錄下的nginx conf資料夾裡,主要的配置引數如下 定義nginx執行的使用者和使用者組 user nobody nobody nginx程序數,建議設定為等於cpu總核心數。worker processes 8 全域性錯誤日誌定義型別,...
nginx配置詳解
定義nginx執行的使用者和使用者組 user www www nginx程序數,建議設定為等於cpu總核心數。worker processes 8 全域性錯誤日誌定義型別,debug info notice warn error crit error log var log nginx error...
NGINX配置詳解
nginx 配置檔案 user nginx 使用者worker processes 8 工作程序,根據硬體調整,大於等於cpu核數 error log logs nginx error.log crit 錯誤日誌 pid logs nginx.pid pid放置的位置 worker rlimit n...