diff --git a/docker/php/entrypoint.sh b/docker/php/entrypoint.sh index 23d4ac238..6d29696fe 100644 --- a/docker/php/entrypoint.sh +++ b/docker/php/entrypoint.sh @@ -1,14 +1,19 @@ #!/bin/bash +# 确保目录所有者为www-data, 组为www-data, 权限为755 +# 这是因为 PHP 进程实际运行时使用的是 Web 服务器用户(如 www-data),而不是 root 用户 +chown -R www-data:www-data /var/www/html +chmod -R 755 /var/www/html + # 检查并创建必要的目录 -for dir in "/var/www/html/runtime" "/var/www/html/uploads"; do +for dir in "/var/www/html/runtime" "/var/www/html/uploads" "/var/www/html/upload"; do if [ ! -d "$dir" ]; then mkdir -p "$dir" echo "创建目录: $dir" fi # 设置权限 - chmod -R a+rw "$dir" - echo "设置权限: $dir -> a+rw" + chmod -R 755 "$dir" + echo "设置权限: $dir -> 755" done # 执行原有的启动命令