柚子快報(bào)邀請(qǐng)碼778899分享:運(yùn)維 nginx開啟資源目錄
柚子快報(bào)邀請(qǐng)碼778899分享:運(yùn)維 nginx開啟資源目錄
nginx開啟資源目錄表
可訪問開放資源目錄下的任何文件以及視頻,圖片等??梢宰鳛橐粋€(gè)妥妥的線上網(wǎng)盤資源托管空間使用。
上一篇文檔揭示了nginx的神秘面紗,初步介紹與啟動(dòng)了nginx的基本功能和使用前端nginx學(xué)習(xí)配置開發(fā)驗(yàn)證,對(duì)各種配置已經(jīng)驗(yàn)證了可用性和實(shí)用性!!!
那如何開放出一個(gè)公用的靜態(tài)資源目錄,可以訪問所有的文件呢?
location /resources/ {
alias F:/;
autoindex on;
}
這段配置實(shí)際上是用于配置 Nginx 服務(wù)器塊,用于從文件系統(tǒng)的特定目錄提供文件。讓我們逐個(gè)解釋每個(gè)指令的作用:
location /resources/:該指令指定要匹配傳入請(qǐng)求的 URL 前綴(/resources/)。因此,任何以 /resources/ 開頭的請(qǐng)求都將由此塊內(nèi)的指令處理。 alias F:/;:該指令指定文件系統(tǒng)上文件的物理路徑,即請(qǐng)求對(duì)應(yīng)的文件應(yīng)該位于的位置。在這里,是 F:/。alias 指令用于將 URL 映射到文件系統(tǒng)上的目錄,當(dāng)訪問相應(yīng)的 URL 時(shí),實(shí)際上是從該目錄中提供文件。 autoindex on;:該指令啟用目錄列表功能,如果目錄中沒有索引文件(如 index.html),則會(huì)生成目錄中文件的列表。這意味著如果有人訪問 /resources/ 中的目錄,并且該目錄中沒有索引文件,Nginx 將會(huì)為用戶生成一個(gè)包含該目錄中文件列表的頁(yè)面。
因此,通過這些配置,任何以 /resources/ 開頭的請(qǐng)求都將從文件系統(tǒng)的 F:/ 目錄提供文件,如果沒有索引文件,Nginx 將會(huì)生成該位置的目錄列表。
以上就成功的將一個(gè)文件夾作為靜態(tài)文件資源開放出來,但同時(shí)也發(fā)現(xiàn)一個(gè)問題這個(gè)目錄這里是中文亂碼的,是哪里的問題?如何配置?
在瀏覽器中顯示的路徑是亂碼,通常是因?yàn)闉g覽器沒有正確地解析 URL 中的中文字符。此時(shí)為了確保瀏覽器可以正確地顯示中文路徑: charset utf-8;
location /resources/ {
charset utf-8;
alias F:/;
autoindex on;
}
此時(shí)就完成了中文路徑解析的配置,并顯示確實(shí)是有效。可以在線打開這個(gè)PDF。 作為nginx靜態(tài)http資源展示,有幾個(gè)比較高效的配置:
默認(rèn)媒體類型以“流”的形式發(fā)送。包含mime.types文件,用于定義各種文件類型的默認(rèn) MIME 類型啟用sendfile特性,用于提高文件發(fā)送性能讀取類似于圖片,視頻,pdf等有更好的效率
http {
# 包含mime.types文件,用于定義各種文件類型的默認(rèn) MIME 類型
include mime.types;
# 默認(rèn)的 MIME 類型
default_type application/octet-stream;
# 啟用sendfile特性,用于提高文件發(fā)送性能
sendfile on;
}
此時(shí)完整的配置:
# Nginx配置文件
# 定義了服務(wù)器如何運(yùn)行和處理請(qǐng)求的配置
# 指定使用的工作進(jìn)程數(shù)
worker_processes 1;
# 事件處理模塊配置,用于設(shè)置連接處理方式
events {
# 每個(gè)工作進(jìn)程的最大連接數(shù)
worker_connections 1024;
}
# HTTP服務(wù)配置,包括全局、服務(wù)器塊和位置塊配置
http {
# 包含mime.types文件,用于定義各種文件類型的默認(rèn) MIME 類型
include mime.types;
# 默認(rèn)的 MIME 類型
default_type application/octet-stream;
# 啟用sendfile特性,用于提高文件發(fā)送性能
sendfile on;
# 設(shè)置客戶端連接的保持活動(dòng)狀態(tài)超時(shí)時(shí)間
keepalive_timeout 65;
# 啟用gzip壓縮,減少數(shù)據(jù)傳輸量
gzip on;
# 服務(wù)器塊配置,可以有多個(gè),用于處理不同的請(qǐng)求
server {
# 監(jiān)聽的端口和服務(wù)器名稱
listen 9000;
server_name localhost;
# 首頁(yè)請(qǐng)求處理
location / {
# 嘗試按順序查找對(duì)應(yīng)的文件,未找到則重定向到/index.html或/index.htm,“也是vue項(xiàng)目一般的訪問配置”
try_files $uri $uri/ /index.html /index.htm;
}
# API請(qǐng)求處理
location /api/ {
# 將API請(qǐng)求代理到指定的IP地址和端口上
proxy_pass http://192.168.31.111:9000;
}
# 靜態(tài)資源目錄開放
location /resources/ {
charset utf-8; # 中文文件名轉(zhuǎn)化
alias F:/; # 靜態(tài)目錄’可修改‘
autoindex on; # 自動(dòng)生成文件目錄結(jié)構(gòu)
}
}
}
在線看PDF
快速、高效
在線看視頻
清晰,流暢,極速
在線瀏覽圖片
高清、無損
柚子快報(bào)邀請(qǐng)碼778899分享:運(yùn)維 nginx開啟資源目錄
好文鏈接
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。
轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。