今天上传文件的时候发现大小超限了,我又懒得压缩,于是乎Google了一下怎么改上传文件限制。
Google后发现是PHP限制了上传的大小,在这里记录一下一些相关的配置:
file_uploads on
是否允许通过HTTP上传文件的开关。默认为ON即是开upload_tmp_dir –
文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹upload_max_filesize 50m
允许上传文件大小的最大值。默认为2Mpost_max_size 50m
指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。默认为8M
一般来说,设置好上述四个参数后,在网络正常的情况下,上传<=50M的文件是不成问题的
但如果要上传>50M的大文件的话,只设置上述四项还不一定能行的通。除非你的网速够快,否则你还得继续设置下面的参数。
max_execution_time 300
每个PHP页面运行的最大时间值(秒),默认30秒max_input_time 60
每个PHP页面接收数据所需的最大时间,默认60秒memory_limit 8m
每个PHP页面所占用的最大内存,默认8M
修改完后重启,发现还是无法上传。接着Google,发现是Nginx的原因。Nginx中有一个配置选项client_max_body_size,这个选项缺省默认为1M,所以还是无法上传超过1M的文件。
那就改吧。进入那就改吧。进入nginx.conf文件,在http段里面添加一句话:
client_max_body_size 50M;
重启Nginx和PHP,就可以上传了。