最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx?Rewrit實(shí)現(xiàn)網(wǎng)頁跳轉(zhuǎn)功能詳細(xì)步驟

 更新時(shí)間:2024年02月02日 09:57:55   作者:Liu_Fang_Hong  
Rewrite主要實(shí)現(xiàn)url地址重寫,以及重定向,就是把傳入web的請(qǐng)求重定向到其他url的過程,這篇文章主要介紹了Nginx?Rewrit實(shí)現(xiàn)網(wǎng)頁跳轉(zhuǎn)功能詳細(xì)步驟,需要的朋友可以參考下

一、Nginx Rewrite

Rewrite主要的功能是實(shí)現(xiàn)URL重寫,Nginx 的 Rewrite 規(guī)則采用 PCRE Perl 兼容正則表達(dá)式的語法進(jìn)行規(guī)則匹配,如相使用 Nginx 的 Rewrite 功能,在編譯 Nginx 前要編譯安裝 PCRE 庫。Rewrite主要實(shí)現(xiàn)url地址重寫,以及重定向,就是把傳入web的請(qǐng)求重定向到其他url的過程。

rewrite和location的功能有點(diǎn)相像,都能實(shí)現(xiàn)跳轉(zhuǎn),主要區(qū)別在于rewrite常用于同一域名內(nèi)更改獲取資源的路徑,而location是對(duì)一類路徑做控制訪問和反向代理,可以proxy_pass到其他服務(wù)器。

Nginx提供的全局變量或自己設(shè)置的變量,結(jié)合正則表達(dá)式和標(biāo)志位實(shí)現(xiàn)url重寫以及重定向。

rewrite只能放在server{},location{},if{}中,

并且只能對(duì)域名后邊的除去傳遞的參數(shù)外的字符串起作用。

二、Rewrite功能

① Rewrite跳轉(zhuǎn)場景

② Rewrite跳轉(zhuǎn)實(shí)現(xiàn)

③ Rewrite實(shí)際場景

④ Rewrite正則表達(dá)式(用于匹配URL)

⑤ Rewrite命令/語法格式

⑥ location分類

⑦ location優(yōu)先級(jí)

⑧ Rewrite和location做比較

⑨ 根據(jù)以上來實(shí)現(xiàn)跳轉(zhuǎn)

Rewrite跳轉(zhuǎn)場景

① URL看起來更規(guī)范、合理

② 企業(yè)會(huì)將動(dòng)態(tài)URL地址偽裝成靜態(tài)地址提供服務(wù)

③ 網(wǎng)址換新域名后,讓舊的訪問跳轉(zhuǎn)到新的域名上

④ 服務(wù)端某些業(yè)務(wù)跳轉(zhuǎn)

URL訪問跳轉(zhuǎn), 支持開發(fā)設(shè)計(jì)

① 頁面跳轉(zhuǎn) ② 兼容性支持 ③ 展示效果

SEO優(yōu)化

維護(hù)

① 后臺(tái)維護(hù) ② 流量轉(zhuǎn)發(fā)

安全

① 偽靜態(tài)頁面

Rewrite跳轉(zhuǎn)實(shí)現(xiàn) Nginx

支持URL重寫、支持if條件判斷

但不支持else的命令執(zhí)行

跳轉(zhuǎn)

循環(huán)最多可以執(zhí)行10次

超過后nginx將返回500的錯(cuò)誤

pcre支持

rewrite使用Nginx全局變量或者自己設(shè)置的變量

結(jié)合正則表達(dá)式和標(biāo)志位實(shí)現(xiàn)URL重寫以及重定向

重寫模塊

set指令

以上全部都基于

ngx_http_rewrite_module模塊

Rewrite實(shí)際場景

① Nginx跳轉(zhuǎn)需求的實(shí)現(xiàn)方式

使用rewrite進(jìn)行匹配跳轉(zhuǎn)(防盜鏈)

使用if匹配全局變量后跳轉(zhuǎn)(Nginx自身的全局變量,不是系統(tǒng)的全局變量)

location可以匹配本地重寫以及跨服務(wù)器跳轉(zhuǎn)

② rewrite放在server{}、if{}、location{}模塊段中

location只對(duì)域名后邊的出去傳參的字符串起作用

③對(duì)域名或者參數(shù)字符串

用if全局變量匹配

使用proxy_pass反向代理

Rewrite是在同一域名內(nèi)更改獲取資源的路徑

location本身就是一種路徑資源

Rewrite命令/語法格式

命令語法:rewrite [正則] [跳轉(zhuǎn)后的內(nèi)容] [rewrite支持的flag標(biāo)記];

flag標(biāo)記說明

last (相當(dāng)于Apache的[L]標(biāo)記,表示完成rewrite)一般用于Server和if當(dāng)中

break (本條規(guī)則匹配完成即終止,不再匹配后面的任何規(guī)則)一般用于location

redirect (返回302臨時(shí)重定向,瀏覽器地址會(huì)顯示跳轉(zhuǎn)后的URL地址,爬蟲不會(huì)更新URL)

permanent (返回301永久重定向,瀏覽器地址欄會(huì)顯示跳轉(zhuǎn)后的URL地址,爬蟲會(huì)更新URL)

break和last類似   但break不會(huì)重新發(fā)起一次處理過程,而是直接返回處理結(jié)果

redirect    該標(biāo)記表示當(dāng)前規(guī)則匹配成功后立即進(jìn)行重定向操作

permanent    該標(biāo)記和redirect類似,但是永久重定向

set    標(biāo)記表示當(dāng)前規(guī)則匹配成功設(shè)置一個(gè)變量,并把變量傳入下一跳規(guī)則

location分類

location = [字符串]{}   #精準(zhǔn)匹配

location [字符串]{}    #一般匹配

location [字符串]{}    #正則匹配

~   #執(zhí)行一個(gè)正則匹配,區(qū)分大小寫

~*  #不區(qū)分大小寫

!~   #區(qū)分大小寫取反

!~*   #不區(qū)分大小寫取反

^~   #普通字符匹配,使用前綴匹配,如果匹配成功則不再進(jìn)行其他匹配

=   #普通字符,精準(zhǔn)匹配

@   #定義一個(gè)命名的location,使用在內(nèi)部定義

location優(yōu)先級(jí)

優(yōu)先匹配精確匹配(=)

其次前綴匹配(^~)

其次再按照文件中順序的正則匹配(~或者~*)

然后匹配不帶任何修飾的前綴匹配(常規(guī)字符串匹配)

通用匹配(/)如果沒有其他匹配,任何請(qǐng)求都可以符合匹配

執(zhí)行順序

精確 > 前綴 > 正則 > 一般 > 通用

優(yōu)先級(jí)相同的情況下,執(zhí)行順序由上到下按順序執(zhí)行

rewrite和location相比

都可以實(shí)現(xiàn)跳轉(zhuǎn)(相同點(diǎn))

rewrite是在同一個(gè)域名內(nèi)更改獲取資源的路徑

location是對(duì)一類路徑做控制訪問或者反向代理,還可以proxy_pass到其他機(jī)器

rewrite會(huì)寫在location里(按順序執(zhí)行)

執(zhí)行Server塊里面的rewrite指令

執(zhí)行l(wèi)ocation匹配

執(zhí)行選定的location中的rewrite指令

三、跳轉(zhuǎn)案例

實(shí)現(xiàn)域名跳轉(zhuǎn)

首先要先關(guān)閉防火墻和安全機(jī)制

第一步 修改指定配置文件

修改指定用戶Nginx 

首先要有nginx的程序用戶

cat  /etc/passwd   #查看是否有nginx用戶,是否是程序用戶

修改對(duì)應(yīng)域名(自定義即可)

修改指定的日志文件,后面的main可加可不加

添加域名重定向 

第二步 檢查語法錯(cuò)誤 

保存并退出

nginx -t   #檢查是否有語法問題

第三步 有報(bào)錯(cuò)進(jìn)行排錯(cuò) 

這里找不到日志

無法識(shí)別到日志格式

接著進(jìn)入配置文件

再次保存并退出

再次查看是否有錯(cuò)誤

手動(dòng)創(chuàng)建日志文件

并且進(jìn)行賦權(quán)

第四步 添加域名映射關(guān)系 

修改域名解析

vim /etc/hosts

第五步 重啟服務(wù) 

重啟服務(wù)

systemctl restart nginx

第六步 測(cè)試結(jié)果 

用瀏覽器進(jìn)行訪問測(cè)試

查看網(wǎng)頁元素

詳細(xì)信息的網(wǎng)址和狀態(tài)碼

舊域名跳轉(zhuǎn)新域名

第一步 修改配置文件

第二步 添加域名映射關(guān)系

第三步 重啟服務(wù)

命令:systemctl restart nginx

第四步 創(chuàng)建網(wǎng)頁執(zhí)行文件

第五步 用瀏覽器進(jìn)行測(cè)試

我們跳轉(zhuǎn)成功

但是網(wǎng)頁內(nèi)沒有內(nèi)容

跳轉(zhuǎn)可以正常跳轉(zhuǎn)但不顯示網(wǎng)頁內(nèi)容

第六步 處理錯(cuò)誤(排錯(cuò))

第七步 重新測(cè)試訪問

基于參數(shù)進(jìn)行匹配跳轉(zhuǎn)

第一步 修改配置文件

第二步 檢查語法錯(cuò)誤

命令:nginx -t

第三步 重啟服務(wù)

命令:systemctl restart nginx

第四步 設(shè)置映射關(guān)系

命令:vim  /etc/hosts

第五步 用瀏覽器進(jìn)行測(cè)試

基于客戶端IP地址訪問跳轉(zhuǎn)

第一步 修改配置文件

第二步 檢測(cè)文件語法問題

命令:nginx -t

第三步 創(chuàng)建網(wǎng)頁返回執(zhí)行文件

第四步 重啟服務(wù)

命令:systemctl restart nginx

第五步 用瀏覽器進(jìn)行訪問測(cè)試

基于目錄下PHP文件進(jìn)行跳轉(zhuǎn)

第一步 修改配置文件

第二步 檢查文件語法問題

命令:nginx -t

第三步 重啟服務(wù)

命令:systemctl restart nginx

第四步 用瀏覽器進(jìn)行測(cè)試

基于普通的RUL進(jìn)行請(qǐng)求跳轉(zhuǎn)

第一步 修改配置文件

第二步 檢查是否存在語法問題

命令:nginx -t

第三步 重啟服務(wù)

命令:systemctl restart nginx

第四步 用瀏覽器進(jìn)行訪問測(cè)試

到此這篇關(guān)于Nginx Rewrit實(shí)現(xiàn)網(wǎng)頁跳轉(zhuǎn)功能詳細(xì)步驟的文章就介紹到這了,更多相關(guān)Nginx Rewrit網(wǎng)頁跳轉(zhuǎn)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解Nginx配置SSL證書實(shí)現(xiàn)Https訪問

    詳解Nginx配置SSL證書實(shí)現(xiàn)Https訪問

    這篇文章主要介紹了詳解Nginx配置SSL證書實(shí)現(xiàn)Https訪問,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • HipChat上傳文件報(bào)未知錯(cuò)誤的原因分析及解決方案

    HipChat上傳文件報(bào)未知錯(cuò)誤的原因分析及解決方案

    HipChat的功能類似于Campfire、Sazneo等在線協(xié)同工具,并且和Yammer以及Salesforce的Chatter等企業(yè)社交平臺(tái)有一定相似之處。你可以為單個(gè)項(xiàng)目或者小組搭建自有的聊天室,也可以很方便的發(fā)起一對(duì)一聊天
    2016-01-01
  • NGINX的反向代理和正向代理的區(qū)別解析

    NGINX的反向代理和正向代理的區(qū)別解析

    NGINX是一款廣泛使用的開源Web服務(wù)器和反向代理服務(wù)器,它也可以作為正向代理服務(wù)器使用,本文給大家介紹NGINX的反向代理和正向代理的區(qū)別,感興趣的朋友跟隨小編一起看看吧
    2026-05-05
  • Nginx反向代理學(xué)習(xí)實(shí)例教程

    Nginx反向代理學(xué)習(xí)實(shí)例教程

    nginx作為web服務(wù)器一個(gè)重要的功能就是反向代理,當(dāng)然你也可以使用nginx配置正向代理,這篇文章主要給大家介紹了關(guān)于Nginx反向代理的相關(guān)資料,需要的朋友可以參考下
    2021-10-10
  • 使用nginx部署前端項(xiàng)目的實(shí)現(xiàn)

    使用nginx部署前端項(xiàng)目的實(shí)現(xiàn)

    前端項(xiàng)目的部署以前一直是把靜態(tài)資源放到后端工程中,隨后端部署一起部署,本文主要介紹了使用nginx部署前端項(xiàng)目的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-10-10
  • Docker部署nginx實(shí)現(xiàn)過程圖文詳解

    Docker部署nginx實(shí)現(xiàn)過程圖文詳解

    這篇文章主要介紹了Docker部署nginx實(shí)現(xiàn)過程圖文詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-11-11
  • ubuntu系統(tǒng)中nginx啟動(dòng)腳本

    ubuntu系統(tǒng)中nginx啟動(dòng)腳本

    這篇文章主要介紹了ubuntu系統(tǒng)中nginx啟動(dòng)腳本,可以實(shí)現(xiàn)nginx的自啟動(dòng),需要的朋友可以參考下
    2014-02-02
  • 使用Nginx實(shí)現(xiàn)端口轉(zhuǎn)發(fā)TCP代理的實(shí)現(xiàn)示例

    使用Nginx實(shí)現(xiàn)端口轉(zhuǎn)發(fā)TCP代理的實(shí)現(xiàn)示例

    本文主要介紹了使用Nginx實(shí)現(xiàn)端口轉(zhuǎn)發(fā)TCP代理的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • Nginx如何為靜態(tài)文件添加訪問權(quán)限

    Nginx如何為靜態(tài)文件添加訪問權(quán)限

    這篇文章主要介紹了Nginx如何為靜態(tài)文件添加訪問權(quán)限問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Nginx訪問日志access_log配置及信息詳解(推薦)

    Nginx訪問日志access_log配置及信息詳解(推薦)

    當(dāng)你設(shè)置日志級(jí)別成debug,如果你在調(diào)試一個(gè)在線的高流量網(wǎng)站的話,你的錯(cuò)誤日志可能會(huì)記錄每個(gè)請(qǐng)求的很多消息,這樣會(huì)變得毫無意義,下面小編給大家介紹Nginx訪問日志access_log配置及信息詳解,感興趣的朋友跟隨小編一起看看吧
    2024-04-04

最新評(píng)論

涟源市| 易门县| 平乡县| 宁津县| 阿鲁科尔沁旗| 县级市| 涞源县| 富锦市| 浦县| 射洪县| 南阳市| 治县。| 凤阳县| 上虞市| 南和县| 三台县| 永春县| 庆安县| 吴忠市| 宜昌市| 乌拉特后旗| 枣阳市| 昌平区| 靖西县| 霍山县| 吴忠市| 夹江县| 铁岭市| 道孚县| 沁水县| 邻水| 巴彦县| 渝中区| 锡林浩特市| 永登县| 江津市| 平利县| 汝州市| 普定县| 同心县| 常山县|