yii2 не удалось удалить файл с помощью unlink

Я пытаюсь использовать unlink для удаления файла, который у меня сейчас есть ниже код:

unlink(Yii::getAlias('@webroot') . $userprofile->avatar);

Путь правильный, так как я использовал echo в представлении для проверки, и он указывает на правильный файл, который я хочу удалить, однако я получаю следующую ошибку:

unlink(/Applications/MAMP/htdocs/advanced/Final Prototype): Operation not permitted

Может ли это быть разрешением с точки зрения того, что вы не являетесь владельцем, если да, то как я могу проверить, нужно ли выполнять chmod для файла или некоторых каталогов?

Заметка: Работа на Mac OS X и использование MAMP

0

Решение

Измените владельца веб-каталога и его файлов на пользователя вашего веб-сервера (например, www-data для апача).

В apache вы можете найти пользователя и группу в * inx системах, из httpd.conf в поисках User или же Group, Например мой httpd.conf Файл на Arch Linux является:

<IfModule unixd_module>
#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User http
Group http
</IfModule>

Так что с этим конфигом вы можете запустить chown -R http:http web в корне проекта Yii.

Если проблема не устранена, вам также необходимо изменить права доступа к веб-папке для правила записи для пользователя и группы (chmod -R 755 web может быть временным решением для этого. Вы должны переместить ваши файлы в папку загрузки и изменить разрешение на 755).

1

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

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

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector