上传目录权限修复脚本
当前后端都要访问同一个上传目录时,最容易出问题的往往不是代码,而是目录权限。
脚本
#!/bin/bash
UPLOAD_DIR="/opt/arkvoice/upload"
UPLOAD_USER="pver"
UPLOAD_GROUP="arkfiles"
if ! getent group $UPLOAD_GROUP > /dev/null; then
groupadd $UPLOAD_GROUP
fi
usermod -aG $UPLOAD_GROUP $UPLOAD_USER
usermod -aG $UPLOAD_GROUP nginx
chown -R $UPLOAD_USER:$UPLOAD_GROUP $UPLOAD_DIR
chmod -R 2755 $UPLOAD_DIR
echo "上传目录权限已修复"思路
这份脚本的核心不是把目录改成 777,而是:
- 让业务用户拥有目录
- 让 Web 服务进程通过组权限读取
- 用 setgid 让子目录继承所属组