Trong môi trường web, đặc biệt với các nền tảng như PHP, WordPress, Laravel, thư mục cache
nên được phân quyền đúng cách để đảm bảo web server có thể đọc/ghi mà không gây lỗi "Permission denied" hoặc rủi ro bảo mật.
www-data
www-data
775
hoặc 755
nếu không cần ghi từ user khác ngoài web serversudo chown -R www-data:www-data /path/to/cache
sudo chmod -R 775 /path/to/cache
Lệnh trên sẽ đảm bảo web server (Nginx hoặc Apache) có thể toàn quyền đọc và ghi trong thư mục cache mà không cần quyền root.
root
) để tạo filewww-data
ghi filesudo apt install acl
sudo setfacl -R -m u:www-data:rwx /path/to/cache
sudo setfacl -dR -m u:www-data:rwx /path/to/cache
ACL cho phép www-data
có quyền ghi kể cả khi file được tạo bởi user khác.
umask
để tạo file có quyền ghi cho groupKhi chạy lệnh với user khác (ví dụ: root), có thể giữ group là www-data
và dùng umask 002
:
umask 002
# Sau đó chạy các lệnh tạo file
umask 002
đảm bảo các file mới tạo sẽ có quyền ghi cho group (www-data
).
root
nếu file được web server ghi → dễ gây lỗi permission.777
→ tiềm ẩn rủi ro bảo mật rất cao nếu server bị tấn công.owner:group
là www-data:www-data
và phân quyền 775
.www-data
và thiết lập umask
phù hợp.