armbian 启用nginx并设置访问密码
确认磁盘挂载状态
运行以下命令检查磁盘是否已正确挂载:
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