Nginx 中的配置命令

2022-08-26 20:12:11 字數 2080 閱讀 6116

二、nginx rewrite

=開頭表示精確匹配

^~開頭表示uri以某個常規字串開頭,不是正則匹配

~開頭表示區分大小寫的正則匹配;

~*開頭表示不區分大小寫的正則匹配

/通用匹配, 如果沒有其它匹配,任何請求都會匹配到

精確匹配,/後面不能帶任何字元

server   

}

匹配所有以/開頭請求

server 

}

以開頭/hao_8080攔截 預設開啟不區分大小寫

server 

#訪問www.hao.cn/hao_8081 最終跳轉到

location /hao_8081/

#訪問www.hao.cn/hao_8081 最終跳轉到

location /hao_8081/

}

nginx提供的全域性變數或自己設定的變數,結合正規表示式和標誌位實現url重寫以及重定向。rewrite只能放在server{},location{},if{}中,並且只能對網域名稱後邊的除去傳遞的引數外的字串起作用。

rewrite主要的功能就是實現url的重寫,nginx的rewrite規則採用pcre,perl相容正規表示式的語法規則匹配,如果需要nginx的rewrite功能,在編譯nginx之前,需要編譯安裝pcre庫。

通過rewrite規則,可以實現規範的url、根據變數來做url轉向及選擇配置。

nginx的rewrite規則就是使用正則匹配請求的url,然後根據定義的規則進行重寫和改變,需ngx_http_rewrite_module模組來支援url重寫功能,該模組是標準模組,預設已經安裝。

變數       含義

$args 這個變數等於請求行中的引數,同$query_string

$content length 請求頭中的content-length欄位。

$content_type 請求頭中的content-type欄位。

$document_root 當前請求在root指令中指定的值。

$host 請求主機頭欄位,否則為伺服器名稱。

$http_user_agent 客戶端agent資訊

$http_cookie 客戶端cookie資訊

$limit_rate 這個變數可以限制連線速率。

$request_method 客戶端請求的動作,通常為get或post。

$remote_addr 客戶端的ip位址。

$remote_port 客戶端的埠。

$remote_user 已經經過auth basic module驗證的使用者名稱。

$request_filename 當前請求的檔案路徑,由root或alias指令與uri請求生成。

$scheme http方法(如http,https)。

$server_protocol 請求使用的協議,通常是http/1.0或http/1.1。

$server_addr 伺服器位址,在完成一次系統呼叫後可以確定這個值。

$server_name 伺服器名稱。

$server_port 請求到達伺服器的埠號。

$request_uri 包含請求引數的原始uri,不包含主機名,如」/foo/bar.php?arg=baz」。

$uri 不帶請求引數的當前uri,$uri不包含主機名,如」/foo/bar.html」。

$document_uri 與$uri相同。

## 如果訪問的ip位址為192.168.5.165,則返回403

if ($remote_addr = 192.168.5.166)

## 不允許谷歌瀏覽器訪問 如果是谷歌瀏覽器返回500

Nginx配置中FastCGI的幾個命令

nginx配置一直以來都在程式設計師的工作中不斷的使用,在這個中有很多的問題需要我們不斷的學習,其中fastcgi就是有不少的問題需要我們解決,下面就是關於fastcgi在nginx配置的幾個指令 fastcgi cache path usr local nginx fastcgi cache le...

nginx配置命令 location配置

波浪線表示執行乙個正則匹配,區分大小寫 表示執行乙個正則匹配,不區分大小寫 表示普通字元匹配,如果該選項匹配,只匹配該選項,不匹配別的選項,一般用來匹配目錄。進行普通字元精確匹配。定義乙個命名的 location,使用在內部定向時,例如 error page,try files。按配置檔案順序搜尋下...

nginx的配置和命令

你好!這是你第一次使用markdown編輯器所展示的歡迎頁。如果你想學習如何使用markdown編輯器,可以仔細閱讀這篇文章,了解一下markdown的基本語法知識。cmd命令進入安裝檔案 1 啟動 c server nginx 1.0.2 start nginx 或c server nginx 1...