Назад | Перейти на главную страницу

Как убедиться, что все загруженные файлы доступны для чтения веб-сервером?

Каждый загруженный файл имеет неправильные разрешения, поэтому мой веб-сервер (Nginx) не может их прочитать. Когда я вручную настраиваю их, запустив sudo chmod -R 755 /var/www/* он снова работает, но мне придется делать это каждый раз, когда я загружаю новый файл. Как я могу автоматически установить все права доступа для файлов, загружаемых через SFTP, на 755?

Я также попытался добавить эту строку в sshd_config:

Subsystem    sftp    internal-sftp   -u 0022

Во-первых, иметь исполняемые файлы - плохая идея, поэтому лучшим решением будет создание папок 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