實現url的重寫
使用ngx_http_rewrite_module模組處理和解析rewrite功能的相關配置
規則核心pcre
語法結構:
if(condition)
支援以下幾種語法:
if($var)
if($request_method=post)
if($http_user_agent ~ msie)
用於中斷當前作用域中的其他nginx配置,可以在server塊、location塊和if塊中使用
return指令
用於完成對請求的處理,直接向客戶端返回響應狀態碼
return [ text ]
return code url;
return url;
通過正規表示式的使用改變uri
語法結構
rewrite
regex
replacement
[flag]
location /
如果uri在第二行被匹配成功,不會使用第三行的配置重新匹配和處理新的uri,而是禳所有的lication塊重新匹配和處理新的uri
配置是否開啟url重寫日誌的輸出功能
rewrite_log on|off
set
variable
value
變數
說明$args
如中的」arg1=value1」
$content_length
存放請求頭的content-length欄位
$content_type
存放請求頭的content-type欄位
$document_root
針對當前請求的根路徑
$document_uri
如中的」/server/source」
$host
請求url的主機部分字段
存放客戶端的**資訊
客戶端的cookie資訊
$limit_rate
nginx伺服器對網路連線速率的限制
$remote_addr
客戶端的位址
$remote_port
客戶端與伺服器建立連線的埠號
$remote_user
客戶端的使用者名稱
$request_body_file
發給後端伺服器的本地檔案資源的名稱
$request_method
客戶端的請求方式
$request_filename
當前請求的資源檔案的路徑名
$request_uri
當前請求的uri
$query_string
同$args
$scheme
請求使用的協議,如http、https、ftp等
$server_protocol
客戶端請求協議的版本
$server_addr
伺服器的位址
$server_name
客戶端請求到達的伺服器的名稱
$server_port
客戶端請求到達的伺服器的埠號
$uri
同$document_uri
Nginx伺服器的Rewrite功能(一)
rewrite功能是大多數web伺服器都支援的功能,其在提供重定向服務時起到主要作用。伺服器組的設定後端伺服器的主要指令是在標準http模組ngx http upstream module進行解析和處理的。upstream namename是給後端伺服器組起的組名,花括號中列出後端伺服器組中包含的伺...
Nginx的Rewrite的配置
nginx的rewrite 經過網上查閱和測試,發現nginx的rewrite規則和apache的rewite規則差別不是很大,幾乎可以直接使用。比如在apache中這樣寫規則 1rewrite 0 9 html viewthread.php?tid 1 last 而在nginx中寫成這樣寫是無法啟...
Nginx基礎的Rewrite規則
rewrite是nginx乙個特別重要的指令,該指令可以使用正規表示式改寫uri。可以指定乙個或多個rewrite指令,按順序匹配 區分大小寫匹配 不區分大小寫匹配 和 區分大小寫不匹配及不區分大小寫不匹配 f和 f 判斷是否存在檔案 d和 d 判斷是否存在目錄 e和 e 判斷是否存在檔案或目錄 x...