URL Rewrite 四種重定向策略

2022-09-07 04:27:09 字數 2970 閱讀 8181

目錄二:rewrite語法

三:rewrite標記flag

五:redirect和permanent的區別

一:rewrite基本概述

1.rewrite簡介

rewrite主要實現url位址重寫,以及重定向,就是把傳入web的請求重定向到其他url的過程。
2.rewrite基本概述

3.rewrite作用

url rewrite即url重寫,就是把傳入web的請求重定向到其他url的過程。url rewrite最常見的應用是url偽靜態化,是將動態頁面顯示為靜態頁面方式的一種技術。比如 使用urlrewrite轉換後可以顯示為
4.什麼是url?
url 代表著是統一資源定位符(uniform resource locator)。url 無非就是乙個給定的獨特資源在 web 上的位址。理論上說,每個有效的 url 都指向乙個唯一的資源。這個資源可以是乙個 html 頁面,乙個 css 文件,一幅影象,等等。而在實際中,也有一些例外,最常見的情況就是乙個 url 指向了不存在的或是被移動過的資源。由於通過 url 呈現的資源和 url 本身由 web 伺服器處理,因此 web 伺服器的擁有者需要認真地維護資源以及與它關聯的url。

二:rewrite語法

語法

syntax: rewrite regex replacement [flag];

預設情況

default: —

應用場景

context: server, location, if

rewrite # 模組命令

regex # 請求的鏈結(支援正規表示式)

replacement # 跳轉的鏈結

[flag]; # 標籤

location /download/
解析:

正規表示式方式:

三:rewrite標記flag
rewrite指令根據表示式來重定向url,或者修改字串,可以應用於server,location,if環境下,每行rewrite指令最後跟乙個flag標記,支援的flag標記有如下**所示:
flag

作用last

本條規則匹配完成後,停止匹配,不再匹配後面的規則

break

本條規則匹配完成後,停止匹配,不再匹配後面的規則

redirect

返回302臨時重定向,位址列會顯示跳轉後的位址

permanent

返回301永久重定向,位址列會顯示跳轉後的位址

1.last和break的區別

server 

location ~ ^/last

location /test

}

2.break請求:
1.請求linux.rewrite.com/break

2.匹配 location ~ ^/break 會跳轉到 linux.rewrite.com/test

3.請求跳轉後,回去查詢本地站點目錄下的 /test

4.如果找到了,則返回/code/test/index.html的內容;

5.如果沒找到該目錄則報錯404,如果找到該目錄沒找到對應的檔案則403

3.last請求:
1.請求linux.rewrite.com/last

2.匹配 location ~ ^/last 會跳轉到 linux.rewrite.com/test

3.如果找到了,則返回/code/test/index.html的內容;

4.如果沒有找到,會重新對當前server發起請求,這個時候訪問位址就變成 linux.rewrite.com/test

5.重新請求server會匹配到 location /test/ 直接返回該location的內容

6.如果也沒有location匹配,再返回404;

四:測試last和break的區別

1.測試last

[root@lb01 ~]# cd /etc/nginx/conf.d/

**配置檔案

2.**測試last

3.**測試break

五:redirect和permanent的區別

重定向

server

location /permanent

1.作用
redirect: 每次請求都會詢問伺服器,如果當伺服器不可用時,則會跳轉失敗。

permanent: 第一次請求會詢問,瀏覽器會記錄跳轉的位址,第二次則不再詢問伺服器,直接通過瀏覽器快取的位址跳轉。

頁面的五種重定向方法

1.requestdispatcher.forward 是在伺服器端起作用,當使用forward 時,servlet engine傳遞http請求從當前的servlet or jsp到另外乙個servlet,jsp 或普通html檔案,也即你的form提交至a.jsp,在a.jsp用到了forwar...

設計模式筆記 四種模式 四種原則

a.簡單工廠 用乙個單獨的類來做這個建立例項的過程,這就是工廠 不符合開 封閉原剛,每次擴充套件都要更改工廠類 計算器 1.cbxtype.items.addrange new object b,策略模式 定義多種演算法,並分別封裝,之間可以互相替換,演算法的變化不影響到客戶 收銀 context ...

mysql四種備份 MYSQL四種備份方法概述

mysql資料庫備份主要有4種方法 1 mysqldump 2 直接拷貝 cp tar,gzip,cpio 3 sqlhotcopy 4 同步複製 1 mysqldump備份 mysqldump生成能夠移植到其它機器的文字檔案,預設地,檔案內容包含建立正在傾倒的表的create語句和包含表中行資料的...