fopen错误:无法打开流:是一个目录

时间:2017-09-08 15:05:36

标签: php post nginx fopen

我已经在这里审核了所有类似的问题和答案,但没有找到对我有用的东西:(我需要存储文件,我有100%的代码,但是当我尝试上传大文件时(实际上不是很大 - 2.5MB)我收到了错误

(1/1) ErrorException
fopen(/home/user/Projects/foobar/public): failed to open stream: Is a directory

这个问题是100%由于文件大小(不是路径或名称,因为我可以成功上传同一目录中的其他文件)因为我已经尝试更改权限,将内容移动到新文件但它没有& #39; t help。

我也改变了nginx

client_max_body_size 100m;

和PHP配置

upload_max_filesize = 100M
post_max_size = 100M

1 个答案:

答案 0 :(得分:4)

我在本地服务器上使用angular 5和Laravel在127.0.0.1:8000上本地运行进行开发,并且在尝试上传大于2M的文件时遇到了同样的错误。我不知道nginx,但这是我如何解决我的错误:

  1. 在我的etc/php/7.1文件夹中有cliapache2,其中两个都有php.ini。仅在apache2内的php.ini中更改upload_max_filesizepost_max_size并没有解决错误。然后我意识到,因为我从php artisan serve运行laravel,cli可能与它有关。

  2. 最后,我还在cli文件夹中打开了php.ini并对upload_max_filesizepost_max_size进行了更改,通过运行

    重新启动了apache2

    sudo service apache2 restart

  3. 然后退出php artisan服务器和ng服务器并重新启动它们。现在一切正常!

    这可能会帮助那些有类似问题的人