欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php上传文件彻底限制在50k以下,快疯了!

程序员文章站 2024-01-20 15:41:04
...
[b] 现在我用的开发环境是windows8.1下Nginx+php5.5,集成环境是phpstorm8.02,问题如下:
我在学习php的文件上传的时候发现我上传到的文件最大只能到50k不论是文本文件还是图片,小于50k都可以正常上传,超过50k,$_FILES["fllename"]["error"]就等于3,我上官网查了错误代码的意思是“UPLOAD_ERR_PARTIAL ,文件只有部分被上传”。网上都是解释错误代码什么意思的,但是没有一个说怎么解决的,各种可能的解决方法都已经试过了,php.ini里边的配置肯定没错,超时设置改到600s,upload_max_filesize 已经改到100M,post_max_size改到100M都不管用,我确定已经生效了,但是好像不起作用,nginx-conf也修改过不管用,什么gzip,limit()都尝试过,实在是不知道怎么办了,请万能的大神告诉我到底是哪里可能出问题了吗???完全找不到头绪的感觉太差了。。。


回复讨论(解决方案)

你检查一下实际可用内存和磁盘配额是否足够

你好,你说的实际可用内存是php.ini中的memory_limit值吗,我已经设定为128M了,还是其他的内存设置呢?磁盘配额这个在哪里设置啊?谢谢

你检查一下实际可用内存和磁盘配额是否足够



你好,你说的实际可用内存是php.ini中的memory_limit值吗,我已经设定为128M了,还是其他的内存设置呢?磁盘配额这个在哪里设置啊?谢谢

请问下改了php.ini 文件,有没重启,不重启是不会生效的。

请问下改了php.ini 文件,有没重启,不重启是不会生效的。



这个,我每次都重启的,还有连电脑都重启了都没用,phpinfo()中显示我已经修改成功了,而且我改小了它就起作用,比如说我限制到10k,那我只能传10k一下的,说明我的设置应该是没问题的。然后我再改到100M,但还是最大只有50K,所以我觉得应该是其他哪里限制了这个大小,但我就是找不到到底是哪里限制了。。。。。。

php.ini 设置的都是最多使用的内存值,并不代表你实际能使用那么多
实际能使用的内存数量是由硬件和操作系统决定的

php.ini 设置的都是最多使用的内存值,并不代表你实际能使用那么多
实际能使用的内存数量是由硬件和操作系统决定的



这么说我大概明白了,可是我就传个50k的就被限制住了,这个也太小了吧, 这是当前内存使用,我现在找不到到底是哪里限制这个值了

大神!大侠!救命啊!!!!!!

有木有人啊。。。。。。。。。

Phpstorm有这种bug,不知道在其他平台上有没有,如果你不单独设置,每次打开文件会自动加上:63342端口,使用Phpstorm内置的网络服务器打开,可能就是这个内置服务器对上传文件进行了限制,在Tools->Deployment->Configuration中进行设置,将端口改为nginx的80端口,这个问题就解决了