Ответ 1
rm -rf app/cache/*
rm -rf app/logs/*
sudo chmod +a "www-data allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs
sudo chmod +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs
Убедитесь, что пользователь www-data заменен пользователем, которым работает ваш веб-сервер. Узнайте, какой пользователь выполняет ваш веб-сервер, выполнив команду:
ps aux | grep http
или
ps aux | grep apache
Вам также может потребоваться включить ACL. Дополнительную информацию см. В Документация по установке и см. эту страницу для получения информации об ACL.
При запуске Symfony из командной строки кешированные файлы/каталоги создаются пользователем, с которым вы вошли в систему - в вашем случае - "jess". При запуске веб-страницы в вашем браузере они создаются пользователем веб-сервера - в вашем случае пользователь "никто". У вашего пользователя нет доступа к файлам и файлам, созданным веб-сервером, и наоборот.
Изменение вашего веб-сервера для запуска как того же пользователя, что и ваш логин, не является идеальным решением, так как оно не очень безопасно, и у вас все еще будет такая же проблема, если вы разместите свой сайт на другом сервере.
Решение состоит в том, чтобы убедиться, что вы выполнили раздел "Настройка разрешений" документации по установке в http://symfony.com/doc/current/book/installation.html.
Убедитесь, что вы указали rm -rf содержимое папки, а не только кеш-приложение/консольный кеш: очистите, так как команда symfony clear cache создаст dirs/files, которые по-прежнему недоступны для записи на вашем веб-сервере.