您好,登錄后才能下訂單哦!
使用nginx如何搭建圖片服務器?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
安裝過程略(我是直接用 yum -y install nginx;
安裝的)。
啟動
啟動(重啟)nginx,以下2個命令都可以:
systemctl restart nginx; # 注:這里的nginx不是目錄,是cd不進去的 /usr/sbin/nginx -s reload;
一般不報錯就是啟動成功。
頁面驗證nginx是否啟動
瀏覽器輸入ip,返回centos頁面,這不對吧?
看下配置文件:
root /usr/share/nginx/html;
該目錄下的index.html 內容就是centos首頁內容,說明沒問題,nignx啟動了(也可以改下index.html的title確定下)。
準備工作
mkdir -p /data/images; # 創建圖片文件存放目錄 chmod -R 755 /data/images; # 授權 cd /data/images; 然后 rz 命令上傳個圖片01.png
vim /etc/nginx.conf,添加配置:
location /images { root /data; autoindex on; }
瀏覽器輸入:
111.222.333.444/data/images/01.png;
出現圖片,表示成功了。
使用alias配置
使用alias當然也是可以的:
location /images { alias /data/images; # 說是后面必須要加'/',這里實測不加也可以 autoindex on; }
如下寫法有問題:
location /images { alias /data; autoindex on; }
問題在哪?
地址欄輸入 /images/01.png 是獲取不到的。
因為 /images 會映射到 /data ,
但是實際目錄是 /data/images/01.png,
所以少了個images。
錯誤配置
實際可能不會那么順利,會踩很多坑。
錯誤配置例1(root)
location /images { root /data/images; autoindex on; }
地址欄輸入 ip/data/images/01.png 發現獲取不到,為什么呢?
期望地址:
/data/images/01.png
實際地址:
/data/images/images/01.png
發現了吧,多了個images,
因為使用root,地址=root+location
其他
root和alias的區別
– | root | alias |
---|---|---|
地址 | root + location | 如果沒有匹配到,alias + location 如果匹配到,alias中匹配locaiton的部分會被替換掉 |
還有其他區別,說是alias的路徑后面必須加 /
,這個未考證。
autoindex on 的作用
autoindex 設置目錄瀏覽。
on:地址欄到images就會顯示文件列表
off:必須要文件全路徑,只到目錄頁面提示403 forbidden
location /images { alias /data; # 目錄瀏覽功能,on:地址欄到images就會顯示文件列表 off:必須要文件全路徑,只到目錄頁面提示403 forbidden autoindex on; }
ps:nginx配置中root和alias的區別
例:訪問http://127.0.0.1/download/*這個目錄時候讓他去/opt/app/code這個目錄找.
方法一(使用root關鍵字):
location / { root /usr/share/nginx } location /download { gzip_static off; tcp_nopush off; root /opt/app/code; }
結果:訪問的時候他是去/opt/app/code/download/這個目錄找了。即:它會在這個目錄里再加一層/download目錄
方法二(使用alias關鍵字):
location / { root /usr/share/nginx } location /download { gzip_static off; tcp_nopush off; alias /opt/app/code; }
結果:訪問的時候直接去/opt/app/code/這個目錄找。
關于使用nginx如何搭建圖片服務器問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。