nginx之路(五):nginx實現動靜分離

前言

Nginx 動靜分離簡單來說就是把動態跟靜態請求分開,不能理解成只是單純的把動態頁面和靜態頁面物理分離。嚴格意義上說應該是動態請求跟靜態請求分開,可以理解成使用 Nginx 處理靜態頁面,Tomcat處理動態頁面。動靜分離從目前實現角度來講大致分爲兩種,一種是純粹把靜態文件獨立成單獨的域名,放在獨立的服務器上,也是目前主流推崇的方案;另外一種方法就是動態跟靜態文件混合在一起發佈,通過nginx 來分開。 通過 location 指定不同的後綴名實現不同的請求轉發。通過 expires 參數設置,可以使瀏覽器緩存過期時間,減少與服務器之前的請求和流量。具體 Expires 定義:是給一個資源設定一個過期時間,也就是說無需去服務端驗證,直接通過瀏覽器自身確認是否過期即可,所以不會產生額外的流量。此種方法非常適合不經常變動的資源。(如果經常更新的文件,不建議使用Expires 來緩存),我這裏設置 3d,表示在這 3 天之內訪問這個 URL,發送一個請求,比對服務器該文件最後更新時間沒有變化,則不會從服務器抓取,返回狀態碼 304,如果有修改,則直接從服務器重新下載,返回狀態碼
200。

準備

在home目錄下新建兩個文件夾image和html

 mkdir /home/image /home/html

在image目錄下放a.jpg和b.jpg兩張圖片
在這裏插入圖片描述

在html目錄下放一個a.html頁面,頁面內容如下

在這裏插入圖片描述

<h1>nginx</h1>

配置

修改nginx的default.conf文件

vim /etc/nginx/conf.d/default.conf

添加

 location /html/ {
        root   /home/;
        index  a.html index.htm;
    }

 location /image {
     root   /home/;
     autoindex on;
 }

在這裏插入圖片描述

autoindex on;是列出image這個目錄下的所有圖片

啓動

啓動nginx

systemctl start nginx.service 

測試

測試

http://192.168.91.137/html/

訪問上面地址會自動轉發到a.html頁面
在這裏插入圖片描述

http://192.168.91.137/image/

在這裏插入圖片描述

如果出現403問題參考如下文章

https://blog.csdn.net/onlysunnyboy/article/details/75270533

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章