PHP как читать файл, если он не принадлежит www-данным - PullRequest
0 голосов
/ 28 июня 2018

Целый день я безуспешно ищу ответ на свой вопрос.

У меня есть каталог, давайте назовем его csv . Я создал пользователя FTP для своего клиента, чтобы он мог загружать туда файлы.

И теперь я хочу прочитать эти файлы через PHP, но не могу из-за проблем с разрешениями. Все загруженные файлы имеют разрешения 0644 , но мне нужно, по крайней мере, 0664 или установить для владельца файла значение www-data . Это единственный способ, которым я заставил это работать. Но каждый раз мне нужно изменить эти файлы вручную, чтобы работать. Как я могу сделать это автоматически?

Ответы [ 2 ]

0 голосов
/ 28 июня 2018

Вариант 1

Вы можете изменить umask для ftp-сервера. В зависимости от используемого серверного программного обеспечения, «как» меняется. Поэтому вам следует проверить документацию ftp-сервера о том, как использовать другой umask.

В вашем случае значение umask должно быть установлено на 0113. Но я не совсем уверен в этом.

Вариант 2

Другим способом может быть установка липкого бита и пользователя www-данных в качестве группы для целевого каталога.

0 голосов
/ 28 июня 2018

Попробуйте использовать chmod . Например

chmod("test.csv",0755);
...