Какие разрешения мне нужно установить для каталога, чтобы сделать его доступным для записи по php?
Под «доступным для записи» я имею в виду автоматическое копирование и создание новых файлов в этом каталоге самим php.
Я тестирую это на бесплатном хосте, и разрешения по умолчанию — 755.
Когда я пытаюсь выполнить скрипт php, он пытается создать еще одну подпапку из этого каталога и скопировать в нее определенные файлы, и это не удается.
Если я установлю его на 777, он будет работать нормально, но я предполагаю, что это не работает на всех версиях Apache по соображениям безопасности?
Кроме того, при создании новых файлов php выступает в роли «владельца»?
Любой процесс, который запускает интерпретатор PHP, должен иметь учетную запись пользователя, связанную с ним. Только этому пользователю необходимо разрешение на запись в каталог. Поэтому, чтобы ответить на ваш последний вопрос, обычно это www-data
или же apache
это владелец этого файла.
Разрешение 777
будет работать, потому что это позволяет всем read
, write
а также execute
этот каталог, но в зависимости от вашего приложения это может быть дыра в безопасности.
Других решений пока нет …