使用nginx做伺服器,用root配置目錄後期望通過image.***.***/image/***.jpg訪問卻一直報404錯誤,但是可以通過image.***.***/***.jpg卻可以訪問
server
}
最後發現配置靜態路徑的兩種方式。之前靜態的都是直接在url裡寫根目錄,所以一直沒發現。加了乙個有字首的url,就出現404問題。
查詢原因
root 配置的意思是,會在root配置的目錄後跟上url,組成對應的檔案路徑。
例如url
最終去尋找的檔案路徑是/storage/images/image/***.png
而實際位置是/storage/images/***.png 導致404
而通過 卻能實際找到/storage/images/***.png
nginx提供了另外乙個靜態路徑配置 :alias
官方root
sets the root directory for requests. for example, with the following configuration
location /i/
the/data/w3/i/top.giffile will be sent in response to the「/i/top.gif」request
官方alias
defines a replacement for the specified location. for example, with the following configuration
location /i/
on request of「/i/top.gif」, the file/data/w3/images/top.gifwill be sent.
當訪問/i/top.gif時,root是去/data/w3/i/top.gif請求檔案,alias是去/data/w3/images/top.gif請求,也就是說
root響應的路徑:配置的路徑+完整訪問路徑(完整的location配置路徑+靜態檔案)
alias響應的路徑:配置路徑+靜態檔案(去除location中配置的路徑)
修改後的配置
server
}
需要注意的是alia配置的目錄後必須加 /
通常情況下 location / 配置中用 root, location /other 使用alias
nginx靜態檔案對映基本配置
1.nginx預設訪問埠80,啟動成功直接輸入ip進行訪問 程序檢視命令 ps ef grep nginx 2.例如前端想訪問127.0.0.1 80 student,則配置檔案中做如下配置 vim usr local nginx conf nginx.conf新增紅色方塊 其中root代指的是ng...
nginx 靜態檔案快取
目的 快取nginx伺服器的靜態檔案。如css,js,htm,html,jpg,gif,png,flv,swf,這些檔案都不是經常更新。便於快取以減輕伺服器的壓力。實現 nginx proxy cache可以將使用者的請快取到本地乙個目錄,當下乙個請求時可以直接調取快取檔案,就不用去後端伺服器去取檔...
nginx 靜態檔案快取
目的 快取nginx伺服器的靜態檔案。如css,js,htm,html,jpg,gif,png,flv,swf,這些檔案都不是經常更新。便於快取以減輕伺服器的壓力。實現 nginx proxy cache可以將使用者的請快取到本地乙個目錄,當下乙個請求時可以直接調取快取檔案,就不用去後端伺服器去取檔...