Это хорошо для выделенной производственной среды (например, VPS или выделенного сервера), но, вероятно, это слишком допустимо, если вы используете общий хостинг - по умолчанию доступны все записи для кеша и папок загрузки, и вам действительно нужно только предоставить доступ к учетной записи веб-сервера (и, возможно, пользователю, который может загружать обновления в код).
Вы можете сделать свою собственную задачу, которая делает то же самое, но с более узкими правами:
- скопируйте задачу проекта: права доступа (lib / vendor / symfony / lib / task / project / sfProjectPermissionsTask.class.php) в папку lib / task
- переименуйте файл и класс
- изменить объявления в строках 30 и 31 (например, «проект» и «строго по разрешениям»)
- изменить разрешения в вызовах метода
$this->chmod()
в строках 46-68. Возможно, вам также придется создать метод $this->chown()
, если вы действительно хотите заблокировать его.
(Вы также можете расширить класс sfProjectPermissionsTask
, но, поскольку вы будете переопределять практически все, на самом деле это не выглядит полезным)