Nginx本地目錄映射實現(xiàn)代碼實例
有時候需要訪問服務(wù)器上的一些靜態(tài)資源,比如掛載其他設(shè)備上的圖片到本地的目錄,而本地的目錄不在nginx根目錄下,這個時候就需要簡單的做一下目錄映射來解決,比如想通過瀏覽器http://ip/image/2016/04/29/10/abc.jpg訪問到系統(tǒng)目錄/image_data/2016/04/29/10/abc.jpg需要在nginx.conf中對應(yīng)的server {}下添加location規(guī)則,配置如下:
location /image/ { root /; rewrite ^/image/(.*)$ /image_data/$1 break; }
location /image/設(shè)置服務(wù)器攔截含有/image/的請求,實際上范圍根據(jù)實際情況確定精確度
root /;設(shè)定作用的根目錄,rewrite就是真正的跳轉(zhuǎn)規(guī)則,設(shè)置以image為開頭的請求跳轉(zhuǎn)到/image_data開頭的根目錄,后面的參數(shù)原封不動的添加過去,這樣就實現(xiàn)了目錄的映射,
使用上面的規(guī)則可以很方便的映射到本地指定的多個用于靜態(tài)訪問的目錄
保存之后使用 ./nginx -s reload 重新載入配置文件,訪問指定的url就訪問到了
另外還可以靈活配置精確代理,比如代理某一個訪問路徑,比如我們訪問http://ip/abc/bcd/123.ico這時候我們映射到/web/host1/123.ico那么可以配置如下規(guī)則:
location /abc/bcd/123.ico { root /; rewrite ^/abc/bcd/123.ico$ /web/host1/123.ico break; }
以上就實現(xiàn)了精確地路徑代理,注意后面的/web/host1屬于文件系統(tǒng)路徑,而不是web主機的虛擬目錄,因為上面root設(shè)置的是根目錄,如果沒有指定root那么以前面的server塊中指定的全局root值為準,每個location塊中屬性的作用域只是這一個塊中;
另外可以代理多個路徑可以通過web真實路徑訪問也可以使用代理路徑訪問,從而根據(jù)不同的業(yè)務(wù)需求設(shè)置代理,那么nginx本身就可以實現(xiàn)很多實用并且好用的功能
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Nginx出現(xiàn)403錯誤,應(yīng)該如何解決
這篇文章主要介紹了Nginx出現(xiàn)403錯誤,應(yīng)該如何解決?具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-03-03Windows?Server?Nginx?反向代理Spring?Boot配置無效報404未找到的問題
一個Spring?Boot的系統(tǒng),開發(fā)完成發(fā)布到Windows服務(wù)器里,使用nginx作為反向代理,修改刷新配置文件,nginx.conf,總是報錯404,這篇文章主要介紹了Windows?Server?Nginx?反向代理Spring?Boot配置無效?404?未找到的問題及解決方案2024-01-01使用Nginx創(chuàng)建臨時和永久重定向的具體示例
HTTP 重定向 是將一個域名或地址指向另一個的方法,有幾種不同類型的重定向,每種對客戶端瀏覽器意味著不同的事情,最常見的兩種類型是臨時重定向和永久重定向,本文給大家介紹了使用Nginx創(chuàng)建臨時和永久重定向的具體示例,需要的朋友可以參考下2024-07-07配置Nginx出現(xiàn)403(Forbidden)靜態(tài)文件加載不出來的解決方法
本文主要介紹了配置Nginx出現(xiàn)403(Forbidden)靜態(tài)文件加載不出來的解決方法,文中通過圖文介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-12-12Nginx記錄分析響應(yīng)慢的請求及替換網(wǎng)站響應(yīng)內(nèi)容的配置
這篇文章主要介紹了Nginx記錄分析響應(yīng)慢的請求及替換網(wǎng)站響應(yīng)內(nèi)容的配置,分別用到了ngx_http_log_request_speed模塊和ngx_http_sub_module模塊,需要的朋友可以參考下2016-01-01