成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

前端培訓-初級階段-場景實戰(zhàn)(2019-06-13)-Nginx代理正確食用方式

Harpsichord1207 / 2536人閱讀

摘要:前端最基礎的就是。我這邊預期準備進入中級階段,中間還是會穿插一些實戰(zhàn)。語法精確匹配,匹配成功,則停止搜索正則不能有嵌套的。指令會根據(jù)在配置文件中出現(xiàn)的順序依次執(zhí)行,可以使用來終止接下來的處理。如果以或者或者,則停止處理,立刻重定向。

前端最基礎的就是 HTML+CSS+Javascript。掌握了這三門技術(shù)就算入門,但也僅僅是入門,現(xiàn)在前端開發(fā)的定義已經(jīng)遠遠不止這些。前端小課堂(HTML/CSS/JS),本著提升技術(shù)水平,打牢基礎知識的中心思想,我們開課啦(每周四)。

截止到 2019-05-30 期,所有成員都進行了一次分享。內(nèi)部對課程進行了一些調(diào)整,之后會針對項目開始 review 。我這邊預期準備進入中級階段,中間還是會穿插一些實戰(zhàn)。 前端培訓目錄

今天講什么?

nginx 的 server

nginx 的 location 匹配規(guī)則

nginx 的 root、rewrite、proxy_pass、alias

nginx 的命令以及報錯日志

今天為什么會開這個題目?

公司內(nèi)部的前端構(gòu)建工具升級(gulp),幫小伙伴處理了一下 nginx 的配置,輔助提升開發(fā)的體驗。

公司想要加快網(wǎng)頁訪問速度(前端緩存),為了測試,我改了我自己服務器的 nginx 配置。

PWA ()

manifest ()

其他方案(localStroage存)

有老哥有科學有效的方案嗎?緩存這塊我還在實驗中,我司有結(jié)果之后我會寫個文章發(fā)出來。

nginx 的 server

定義虛擬主機相關(guān)。server 中通過 server_name 來匹配域名,listen來匹配端口

server_name

用于匹配域名,需要已經(jīng)映射的域名。
舉個栗子,我在阿里云有一臺云服務器 IP:123.56.16.33:443。買了一個域名 lilnong.top。
我現(xiàn)在把我的域名指向了我的ip。那所有請求我域名的都會到我這臺服務器上。我需要用 server_name 來判斷請求的是那臺主機,再進行分發(fā)

listen

用于匹配端口號,一般來說,我們當做服務的就需要加上 80 和 443

協(xié)議 端口 用途
http 80 瀏覽器訪問
https 443 瀏覽器訪問
ftp 21
server_name 與 host 匹配優(yōu)先級

完全匹配

通配符在前的,如 *.lilnong.top

在后的,如 www.lilnong.*

正則匹配,如 ~^.www.lilnong.com$

如果都不匹配

優(yōu)先選擇 listen 配置項后有 default 或 default_server 的

找到匹配 listen 端口的第一個 server 塊

nginx 的 location 匹配規(guī)則 location 是什么?

location 是用于在 server 服務中,根據(jù) URL 進行匹配查找。屬于 ngx_http_core_module 模塊。

location 語法

location [ = | ~ | ~* | ^~ ] uri {...}

= : 精確匹配,匹配成功,則停止搜索正則; 不能有嵌套的 location??梢?strong>加速 request 的處理。

~ : 區(qū)分大小寫的正則匹配

~*不區(qū)分大小寫正則匹配

^~不進行正則的匹配。

location 匹配規(guī)則

前綴匹配(prefix string)
//static/

正則匹配(regular expresstion)(RegExp)
.(gif|jpg|png|js|css)$

nginx 首先檢查 前綴匹配,使用 longest matching prefix 最長前綴匹配規(guī)則,記住匹配的 location,然后使用正則匹配,根據(jù)他們在配置文件中的順序,一旦匹配成功,則停止檢索。

匹配時要注意/的使用。是否要封閉。

 location /static { 
     # 可以匹配到 URL 如: "/static/html" 和 "statichtml/html`
 }
 location /static/ { 
     # 只可匹配到 URL 如: "/static/html" 和 "static/**"
 }

nginx 的 root、rewrite、proxy_pass、alias root

用來指定請求資源的真實路徑,本地磁盤路徑

location /nginx/ { 
  root /var/log/;
  #請求http://nginx.lilnong.top/nginx/20190227_access.log
  #>/var/log/nginx/20190227_access.log
}
alias

用來指定請求資源的真實路徑,本地磁盤路徑。會丟棄 location 所匹配的,這是和 root 的區(qū)分

location /nginx/ { 
  alias  /var/log/nginx/;
  #請求http://nginx.lilnong.top/nginx/20190227_access.log
  #>/var/log/nginx/20190227_access.log
}
rewrite

在 server 塊中,會先執(zhí)行 rewrite 部分,然后才會匹配 location 塊。

語法:rewrite regex replacement [flag];

如果 regex 匹配到,則會使用 replacement 來替換 URL。

rewrite 指令會根據(jù)在配置文件中出現(xiàn)的順序依次執(zhí)行,可以使用 flag 來終止接下來的處理。

如果 replacement 以 http:// 或者 https:// 或者 $scheme,則停止處理,立刻重定向。

flag 描述

last 將根據(jù) rewrite 后的地址重新在 server標簽執(zhí)行。

break 將根據(jù) rewrite 后的地址重新在當前的 location標簽執(zhí)行。

redirect 302跳轉(zhuǎn)到rewrtie后面的地址。

permanent 301永久調(diào)整到rewrtie后面的地址,即當前地址已經(jīng)永久遷移到新地址,一般是為了對搜索引擎友好。

#這是我把ip訪問重定向到我的網(wǎng)頁
server {
    listen 80;
    server_name 123.56.16.33;
    rewrite ^/(.*)$ https://www.lilnong.top/$1 permanent; 
}
proxy_pass

訪問 https://nginx.lilnong.top/static/html

location /static/ {
  proxy_pass http://www.lilnong.top; 
  #結(jié)尾不帶 `/`,將匹配到 http://www.lilnong.top/static/html
}
location /static/ {
  proxy_pass http://www.lilnong.top/; 
  #結(jié)尾帶 `/`,將匹配到 http://www.lilnong.top/html
}
nginx 的命令以及報錯日志

重啟(重新載入配置文件) nginx -s reload

重啟 nginx -s reopen

停止 nginx -s stop

啟動 nginx

如果有錯誤,重啟的時候會報錯。
在 windows 中(我們正在用的),看不到報錯,服務也起不來,可以的 nginx/logs/error.log 看錯誤日志來排查問題。

資源

nginx 中文

nginx org

nginx的location配置詳解

微信公眾號:前端linong

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/104560.html

相關(guān)文章

  • 前端培訓-初級階段-場景實戰(zhàn)2019-06-13)-Nginx代理正確食用方式

    摘要:前端最基礎的就是。我這邊預期準備進入中級階段,中間還是會穿插一些實戰(zhàn)。語法精確匹配,匹配成功,則停止搜索正則不能有嵌套的。指令會根據(jù)在配置文件中出現(xiàn)的順序依次執(zhí)行,可以使用來終止接下來的處理。如果以或者或者,則停止處理,立刻重定向。 前端最基礎的就是 HTML+CSS+Javascript。掌握了這三門技術(shù)就算入門,但也僅僅是入門,現(xiàn)在前端開發(fā)的定義已經(jīng)遠遠不止這些。前端小課堂(HTM...

    seanHai 評論0 收藏0
  • 前端培訓-初級階段-場景實戰(zhàn)2019-06-06)-Content-Type對照表及日常使用

    摘要:前端最基礎的就是。數(shù)據(jù)被編碼為鍵值對。大法好,精準識別,也算是正確的表單提交。全局的默認值實例默認值創(chuàng)建實例時設置配置的默認值在實例已創(chuàng)建后修改默認值攔截器,可以攔截錯誤,進行上報。參考資料類型看云 前端最基礎的就是 HTML+CSS+Javascript。掌握了這三門技術(shù)就算入門,但也僅僅是入門,現(xiàn)在前端開發(fā)的定義已經(jīng)遠遠不止這些。前端小課堂(HTML/CSS/JS),本著提升技術(shù)水...

    mayaohua 評論0 收藏0
  • 前端培訓-初級階段-場景實戰(zhàn)2019-06-06)-Content-Type對照表及日常使用

    摘要:前端最基礎的就是。數(shù)據(jù)被編碼為鍵值對。大法好,精準識別,也算是正確的表單提交。全局的默認值實例默認值創(chuàng)建實例時設置配置的默認值在實例已創(chuàng)建后修改默認值攔截器,可以攔截錯誤,進行上報。參考資料類型看云 前端最基礎的就是 HTML+CSS+Javascript。掌握了這三門技術(shù)就算入門,但也僅僅是入門,現(xiàn)在前端開發(fā)的定義已經(jīng)遠遠不止這些。前端小課堂(HTML/CSS/JS),本著提升技術(shù)水...

    張金寶 評論0 收藏0
  • 前端培訓-初級階段-場景實戰(zhàn)2019-05-16)-聊天頭像-微信頭像-群組頭像

    摘要:我們先來了解一下需求,微信大家都有吧,拉個群注意觀察群頭像。實現(xiàn)微信頭像布局效果地址,本來是在的,但是大哥最近有點不穩(wěn)定老連不上。設置一下就好了實現(xiàn)微信頭像布局效果地址,我還是個孩子,寫起來真的煩啊,我就寫前幾個好不好。 前端最基礎的就是 HTML+CSS+Javascript。掌握了這三門技術(shù)就算入門,但也僅僅是入門,現(xiàn)在前端開發(fā)的定義已經(jīng)遠遠不止這些。前端小課堂(HTML/CSS/...

    Taste 評論0 收藏0
  • 前端培訓-初級階段-場景實戰(zhàn)2019-05-16)-聊天頭像-微信頭像-群組頭像

    摘要:我們先來了解一下需求,微信大家都有吧,拉個群注意觀察群頭像。實現(xiàn)微信頭像布局效果地址,本來是在的,但是大哥最近有點不穩(wěn)定老連不上。設置一下就好了實現(xiàn)微信頭像布局效果地址,我還是個孩子,寫起來真的煩啊,我就寫前幾個好不好。 前端最基礎的就是 HTML+CSS+Javascript。掌握了這三門技術(shù)就算入門,但也僅僅是入門,現(xiàn)在前端開發(fā)的定義已經(jīng)遠遠不止這些。前端小課堂(HTML/CSS/...

    springDevBird 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<