我正在使用symfony创建一个小型投资组合网站。一切都在我的本地机器上运行,我可以上传投资组合物品等等。
然而,在我的Droplet上(Ubuntu 16.04.1 x64,运行Nginx)
因此,我按照指南上传文件http://symfony.com/doc/current/controller/upload_file.html
一切都在本地工作,但我的生产液滴出现500错误。 我检查了我的日志中的错误,似乎是我在参数中设置的路径:
(portfolio_directory: '%kernel.root_dir%/../web/images/portfolio'
)
给出以下错误
[2016-09-20 12:36:33] request.CRITICAL: Uncaught PHP Exception Symfony\Component\HttpFoundation\File\Exception\FileException: "Unable to write in the "/var/www/wsly/www/app/../web/images/portfolio" directory" at /var/www/wsly/www/vendor/symfony/symfony/src/Symfony/Component/HttpFoundation/File/File.php line 113 {"exception":"[object] (Symfony\\Component\\HttpFoundation\\File\\Exception\\FileException(code: 0): Unable to write in the \"/var/www/wsly/www/app/../web/images/portfolio\" directory at /var/www/wsly/www/vendor/symfony/symfony/src/Symfony/Component/HttpFoundation/File/File.php:113)"}
现在整个图像文件夹的权限设置为777(我为此使用了chmod -R 777)所以我不认为问题实际上是权限,而是路径不正确?不确定,但app /../ web不是一个有效的路径,它似乎从字面上复制路径,因为根目录是app目录?而不是使用/../
上升一级似乎无法解决这个问题。
答案 0 :(得分:0)
我有同样的问题,并花了很多天试验 我最终通过使用此格式作为目的地
来修复它upload_destination: ../web/images/profiles