如何确保所有上传的文件都可以被网络服务器读取?

如何确保所有上传的文件都可以被网络服务器读取?

每个上传的文件都有错误的权限,所以我的 Web 服务器 (Nginx) 无法读取它们。当我通过运行手动调整它们时,sudo chmod -R 755 /var/www/*它会再次工作,但每次上传新文件时我都必须这样做。如何自动将通过 SFTP 上传的文件的所有权限设置为 755?

我还尝试将这一行添加到 sshd_config:

Subsystem    sftp    internal-sftp   -u 0022

答案1

首先,让文件可执行是个坏主意,所以更好的解决方案应该是执行文件夹 755 和文件 644(或 640)

find /var/www/ -type d -exec chmod 755 {} \;
find /var/www/ -type f -exec chmod 644 {} \;

现在,为了确保文件以特定权限上传,请检查umask

https://docs.oracle.com/cd/E19683-01/817-3814/userconcept-95347/index.html


像这样更改 /etc/ssh/sshd_config:

Subsystem sftp internal-sftp -u 0022

如果你有一个团体:

Match Group xyz
  .
  .
  .
  ForceCommand internal-sftp -u 0022

相关内容