我想把磁盘的文件开放下载,而且需要登录后才可以下载,这个时候直接使用nginx颇为合适。所以马上搭建Nginx作为下载服务器,并配置用户名密码
1.安装ngnix
2.直接作为下载服务器
location /download/ {
alias /pack/; #文件路径
#autoindex on; #开启索引功能
}
3.配置下载文件并验证登录
server {
listen 9000; #端口
server_name download_server; #服务名
charset utf-8; # 避免中文乱码
root E:\Download\java; #显示的根索引目录,注意这里要改成你自己的,目录要存在
location / {
auth_basic "Login";//开启登录验证
auth_basic_user_file /opt/passwd; //用户配置文件
autoindex on; #开启索引功能
autoindex_exact_size off; # 关闭计算文件确切大小(单位bytes),只显示大概大小(单位kb、mb、gb)
autoindex_localtime on; # 显示本机时间而非 GMT 时间
}
}
passwd文件内容格式如下:
# comment
name1:password1
name2:password2:comment
name3:password3
密码应该使用crypt()函数加密。可以用Apache HTTP Server发行包中的htpasswd命令或者openssl passwd来创建此类文件。
需要注意auth_basic_user_file所对应的路径配置为反斜杠,如果使用斜杠,启动nginx时会报错。
修改后重启nginx,再在浏览器中访问时,就需要进行登录验证