确认磁盘挂载状态
运行以下命令检查磁盘是否已正确挂载:
ls /sda1
ls /sdb1
若未挂载,执行挂载操作:
sudo mkdir -p /sda1 /sdb1
sudo mount /dev/sda1 /sda1
sudo mount /dev/sdb1 /sdb1
使用lsblk
验证分区情况。
创建Nginx配置文件
编辑新配置文件:
sudo nano /etc/nginx/sites-available/disk-share
插入以下配置内容:
cat /etc/nginx/sites-available/disk-share
server {
listen 89;
server_name localhost;
# 重定向 /sda1 -> /sda1/
location = /sda1 {
return 301 /sda1/;
}
location = /sdb1 {
return 301 /sdb1/;
}
# 目录浏览
location /sda1/ {
alias /sda1/;
autoindex on;
autoindex_localtime on;
}
location /sdb1/ {
alias /sdb1/;
autoindex on;
autoindex_localtime on;
}
location ~ /\. {
deny all;
}
}
保存文件并退出编辑器。
激活配置
移除默认配置并启用新配置:
sudo rm /etc/nginx/sites-enabled/default
sudo ln -s /etc/nginx/sites-available/disk-share /etc/nginx/sites-enabled/
测试与重启服务
验证配置语法:
sudo nginx -t
若测试通过,重启服务:
sudo systemctl restart nginx
访问文件共享
通过浏览器访问:
http://<设备IP>/sda1/
http://<设备IP>/sdb1/
添加访问控制
安装工具并设置密码:
sudo apt install apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd username
在配置文件中添加:
server {
listen 80;
server_name localhost;
charset utf-8;
location = /sda1 {
return 301 /sda1/;
}
location /sda1/ {
alias /sda1/;
autoindex on;
autoindex_localtime on;
# 🔐 密码保护开始
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;
# 🔐 密码保护结束
}
location /sdb1/ {
alias /sdb1/;
autoindex on;
autoindex_localtime on;
charset utf-8;
# 🔐 密码保护开始
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;
# 🔐 密码保护结束
}
location ~ /\. {
deny all;
}
}
故障排查
查看实时错误日志:
sudo tail -f /var/log/nginx/error.log