【发布时间】:2015-04-11 16:52:23
【问题描述】:
我正在尝试在我的Laravel 应用程序中上传一张图片。 localhost 一切正常。我已经测试过很多次了。
所以,我已将所有文件上传到服务器并再次测试。现在当我上传图片时,我收到以下错误:
{"error":{"type":"Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException","message":"","file":"/var/www/html/vendor/laravel/framework/ src/Illuminate/Routing/RouteCollection.php","line":210}}`
不知道这有什么问题。在 locahost 中一切正常。我在我的服务器中使用Ubuntu 14.02。 GD 库已安装并激活。 Composer 更新已运行并已安装所有软件包。
可能是什么问题?如果您需要任何代码 sn-ps,请告诉我。提前致谢。
【问题讨论】:
-
运行
php artisan routes(或 Laravel 5 的php artisan route:list)并查看您要上传到的路线是否存在且正确。 -
在 URL 的尾部有一个额外的
/。会不会有什么问题? -
我最后更改了
/,它删除了301 permanently moved错误。现在它显示以下错误:{"error":{"type":"ErrorException","message":"copy(\/var\/www\/html\/public\/\/upload\/20150413032940.jpeg): failed to open stream: Permission denied","file":"\/var\/www\/html\/app\/controllers\/NominationController.php","line":88}} -
这更有意义。似乎您没有网络服务器使用的用户的写入权限
-
这取决于... 您可以使用
chown user:group /path/to/directory更改目录的所有权。或使用chmod 775 /path/to/directory使其对所有者组中的所有用户都可写。