背景
nginx是一款高性能的服務器,用途很多。除了可以作為后端服務的負載均衡反向代理服務器,還有一個用途就是做靜態資源的緩存服務器。
當前項目基本上都是前后端分離,為了加速前端頁面的響應速度,可以將前端的相關資源,如html,js,css或者圖片放到nginx指定目錄下。訪問的時候只需要IP加路徑就可以實現高效快速的訪問。
正文
一.首先安裝好nginx,啟動nginx服務且能夠正常訪問 Welcome to nginx!界面
二.配置靜態資源訪問核心是配置nginx.conf文件,找到nginx.conf文件
三.配置nginx.conf
3.1.在nginx.conf的http節點中添加配置,參考下方格式:
server { listen 8000; listen somename:8080; server_name somename alias another.alias; location / { root html; index index.html index.htm; } }
3.2 解讀server節點各參數含義
listen:代表nginx要監聽的端口
server_name:代表nginx要監聽的域名
location :nginx攔截路徑的匹配規則
location塊:location塊里面表示已匹配請求需要進行的操作
四.實例
4.1准備要訪問的靜態文件
兩個文件夾:folder1 folder2 folder3各放兩個文件一個index.html
4.2創建一個server
server { listen 9999; server_name localhost; location /xixi { alias /Users/qingshan/folder1; index index.html; } location /haha { alias /Users/qingshan/folder2; index index.html; } location /folder3 { root /Users/qingshan; index index.html; } }
五.重點
重點是理解alias與root的區別,root與alias主要區別在於nginx如何解釋location后面的uri,這使兩者分別以不同的方式將請求映射到服務器文件上。
alias(別名)是一個目錄別名。
例子: location /123/abc/ { root /ABC; } 當請求http://qingshan.com/123/abc/logo.png時,會返回 /ABC/123/abc/logo.png文件,即用/ABC 加上 /123/abc。
root(根目錄)是最上層目錄的定義。
例子: location /123/abc/ { alias /ABC; } 當請求http://qingshan.com/123/abc/logo.png時,會返回 /ABC/logo.png文件,即用/ABC替換 /123/abc。