Zend Framework — PHP не имеет разрешения ни для создания нового файла, ни для записи в файл

(Linux CentOS 7) Я установил Zend Serve 8. Когда я хочу посетить проект (на данный момент это OpenCart, но я также тестировал его с помощью Laravel), он выдает ошибку, что Permission Denied для некоторого файла (не позволяет написать). Вот ошибка:

 Warning: mkdir(): Permission denied in /var/www/html/project/dir/install.php on line 26

Но есть и другая ошибка, точно такая же, как и выше, с единственной разницей в функции (file_put_contents()). Что я должен делать? Является ZendServer отказано или PHP ?

0

Решение

Вам необходимо установить уровень разрешений для каталога, с которым вы хотите работать PHP. Откройте свой каталог в SFTP или в любом другом месте и измените его разрешения на «Чтение владельцем», «Запись», «Выполнение» и «Чтение группы», «Запись», «Выполнение» и другие, просто «Чтение», что в совокупности означает его установку на 774. Это может быть не самой лучшей — наиболее безопасной настройкой извините, я не очень разбираюсь в этой конкретной теме), но у меня это работает. Это потому, что папка не была создана PHP и когда она была создана, она была настроена так, чтобы другие не могли сохранять и записывать в нее.

Показано:

        Read | Write | Execute
Owner    X       X        X
Group    X       X        X     <-- see *
Others   X

Также рассматривается как #774 ,

  • В вашей файловой системе это категория, в которую очень вероятно установлен PHP, он не является владельцем каталога, поэтому ему не будут предоставлены разрешения, показанные выше. Измените разрешения на вышеуказанную настройку, и теперь PHP должен работать в этой папке.

Редактировать:

Важно: сделать изменения рекурсивными!

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]