基本設定
server { listen 80; server_name file.52itstyle.com; charset utf-8; #root 指令用来指定文件在服务器上的基路径 root /data/statics; #location指令用来映射请求到本地文件系统 location / { autoindex on; # 索引 autoindex_exact_size on; # 显示文件大小 autoindex_localtime on; # 显示文件时间 } }
重啟nginx服務:
nginx -s reload
存取檔案服務,http://file.52itstyle.com/
設定密碼
htpasswd指令是apache的web伺服器內建工具,用於建立和更新儲存使用者名稱、網域和用戶基本認證的密碼檔。
htpasswd(選項)(參數)
-c:建立一個加密檔案;
-n:不更新加密文件,只將加密後的用戶名密碼顯示在螢幕上;
-m:預設採用md5演算法對密碼進行加密;
#-d:採用crypt演算法將密碼加密;
-p:不對密碼進行加密,即明文密碼;
-s:採用sha演算法將密碼加密;
-b:在命令列中一併輸入使用者名稱和密碼而不是根據提示輸入密碼;
-d:刪除指定的使用者。
實例
htpasswd -bc passwd.db itstyle 123456
在目錄下產生一個passwd.db文件,使用者名稱itstyle,密碼:123456,預設採用md5加密方式。
在原有密碼檔案中增加下一個使用者
htpasswd -b passwd.db admin 123456
nginx設定
server { listen 80; server_name file.52itstyle.com; charset utf-8; root /data/share; location / { autoindex on; # 索引 autoindex_exact_size on; # 显示文件大小 autoindex_localtime on; # 显示文件时间 auth_basic "请输入用户名密码"; auth_basic_user_file /usr/local/openresty/nginx/passwd.db; } }
重啟nginx存取:
圖片防盜鏈
如果伺服器的圖片被別的網站盜鏈,將影響伺服器的頻寬以及存取速度,這時我們就需要設定圖片檔案或視訊檔案的防盜鏈功能。
防盜鏈功能,簡單來說就是你可以直接訪問該資源,但是不能將我的資源鏈接放到你自己的服務器上讓別人訪問,尤其是圖片或視頻這種比較大的文件,容易導致伺服器回應很慢。
server { listen 80; server_name file.52itstyle.com; charset utf-8; #root 指令用来指定文件在服务器上的基路径 root /data/statics; #location指令用来映射请求到本地文件系统 location ~*^.+\.(gif|jpg|png|jpeg)$ { expires 30d; valid_referers none blocked file.52itstyle.com; if ($invalid_referer) { rewrite ^/ http://www.52itstyle.com/404.jpg; } } }
重啟nginx服務,測試圖片連結:http://file.52itstyle.com/nfs_c.png
##
以上是Nginx靜態檔案伺服器怎麼配置的詳細內容。更多資訊請關注PHP中文網其他相關文章!