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

nginx try_files指令判斷文件是否存在實例

 更新時間:2015年02月13日 08:53:05   投稿:junjie  
這篇文章主要介紹了nginx try_files指令判斷文件是否存在實例,本文用一個實際需求講解try_files指令的使用,并給出配置示例,需要的朋友可以參考下

現(xiàn)在有這樣一個需求,網(wǎng)站根目錄下有靜態(tài)文件,static目錄下也有靜態(tài)文件,static目錄下的靜態(tài)文件是程序批量生成的,我想讓nginx在地址不變的前提下優(yōu)先使用static目錄里面的文件,如果不存在再使用根目錄下的靜態(tài)文件,比如訪問首頁http://example.com/index.html則nginx返回/static/index.html,如果不存在返回/index.html。

經(jīng)過一番研究可以用if指令實現(xiàn),關鍵配置如下,這條配置需要放到靠前的位置

復制代碼 代碼如下:

if (-e $document_root/static$request_uri) {
 rewrite ^/(.*)$ /static/$1 break;
 break;
}

這里有兩點需要注意:

nginx變量默認應該開頭有反斜線而結尾沒有。

nginx字符串和變量可以直接連接,如果可能有歧義可以花括號括起變量名稱,整個字符串必須加雙引號

復制代碼 代碼如下:
"${document_root}/static${request_uri}"

是用這種方式有一個缺點,index指令指定的文件不會起作用,比如訪問http://example.com/就會404,必須顯示的指定文件名才行http://example.com/index.html??梢杂胷ewrite修復,但是感覺不爽,在nginx陷阱頁面突然發(fā)現(xiàn)一個針對性的指令try_files

復制代碼 代碼如下:

set $static "/static";
try_files $static$uri $static$uri/index.html /index.php;

參考頁面

http://wiki.nginx.org/Pitfalls

后來發(fā)現(xiàn)$uri變量本身會自動添加index.html后綴,經(jīng)過實驗這樣寫也是可以的

復制代碼 代碼如下:

if (-e "${document_root}/static${uri}") {
 rewrite ^/(.*)$ /static/$uri break;
}

if (-e $request_filename) {
 break;
}


因為最后不存在的文件都寫到index.php去了所以上面rewrite之后需要再判斷一次文件存在。

相關文章

  • 詳解nginx服務器綁定域名和設置根目錄的方法

    詳解nginx服務器綁定域名和設置根目錄的方法

    這篇文章主要介紹了詳解nginx服務器綁定域名和設置根目錄的方法,nginx服務器綁定域名以及設置根目錄非常方便,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • Nginx ssi合并頁面的具體實現(xiàn)

    Nginx ssi合并頁面的具體實現(xiàn)

    nginx的ssi模塊是一種類似于ASP的基于服務器的網(wǎng)頁制作技術,本文主要介紹了Nginx ssi合并頁面的具體實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2024-05-05
  • 一文了解nginx HTTP安全響應問題

    一文了解nginx HTTP安全響應問題

    一些網(wǎng)站系統(tǒng)會經(jīng)常遭到各類XSS攻擊、點劫持等,從而造成重要信息的泄露以及服務器安全問題,本文就來介紹一下,感興趣的可以了解一下
    2023-11-11
  • Nginx負載均衡(架構之路)詳解

    Nginx負載均衡(架構之路)詳解

    這篇文章主要為大家詳細介紹了Nginx負載均衡的相關資料,如何配置三臺服務器,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • Nginx丟棄http包體處理實例詳解

    Nginx丟棄http包體處理實例詳解

    這篇文章主要介紹了Nginx丟棄http包體處理實例詳解的相關資料,需要的朋友可以參考下
    2017-06-06
  • linux下安裝Nginx1.16.0的教程詳解

    linux下安裝Nginx1.16.0的教程詳解

    因為最近在倒騰linux,想安裝新版本的nginx,找了一圈教程沒有找到對應的教程,在稍微倒騰了一會之后終于成功的安裝了最新版。這篇文章主要介紹了linux下安裝Nginx1.16.0 ,需要的朋友可以參考下
    2019-06-06
  • Nginx 實現(xiàn)會話保持的方式配置小結

    Nginx 實現(xiàn)會話保持的方式配置小結

    本文主要介紹了在NGINX中實現(xiàn)會話保持的幾種常見方法,包括IP哈希、基于Cookie的會話保持、基于URL參數(shù)的會話保持及使用第三方的nginx-sticky-module模塊,感興趣的可以了解一下
    2024-11-11
  • 阿里云國際版使用Nginx作為HTTPS轉發(fā)代理服務器的處理方法

    阿里云國際版使用Nginx作為HTTPS轉發(fā)代理服務器的處理方法

    本文介紹了使用NGINX作為HTTPS流量轉發(fā)代理的兩種方法。它總結了NGINX使用HTTP?CONNECT隧道和NGINX流充當HTTPS轉發(fā)代理的解決方案的原則,環(huán)境構建要求,應用場景和關鍵問題
    2022-05-05
  • Nginx解決Http慢攻擊(Slow HTTP Attack)的方法

    Nginx解決Http慢攻擊(Slow HTTP Attack)的方法

    緩慢的HTTP拒絕服務攻擊是一種專門針對于Web的應用層拒絕服務攻擊,本文給大家介紹了Nginx解決Http慢攻擊(Slow HTTP Attack)的方法,需要的朋友可以參考下
    2024-02-02
  • Nginx下WordPress鏈接(url偽靜態(tài))301永久重定向實現(xiàn)方法

    Nginx下WordPress鏈接(url偽靜態(tài))301永久重定向實現(xiàn)方法

    在幾個blog程序中折騰的結果,導致url連續(xù)二次變化。這是第三次了。 nginx 通過rewrite 使用 permanent; 參數(shù) 成301永久url重定向
    2012-09-09

最新評論

广元市| 台州市| 南丹县| 福鼎市| 伊宁县| 延川县| 福贡县| 溆浦县| 舒城县| 新疆| 金湖县| 龙井市| 鄱阳县| 榆树市| 库尔勒市| 林西县| 察隅县| 枣庄市| 四子王旗| 呼图壁县| 钟山县| 隆化县| 永川市| 佛山市| 青龙| 竹山县| 饶河县| 蓝田县| 百色市| 长汀县| 堆龙德庆县| 逊克县| 织金县| 泊头市| 太康县| 绩溪县| 曲水县| 垣曲县| 霞浦县| 富顺县| 永寿县|