在使用PbootCMS时,上传文件大小的限制是由php.ini决定的。为了实现大文件的上传,我们需要对php.ini进行修改。

一、打开 php.ini 文件

找到PHP目录下的php.ini文件,进行以下参数设置:

1. file_uploads = on ;
允许通过HTTP上传文件的开关,默认为ON即开启。

2. upload_tmp_dir ;
指定文件上传至服务器上存储临时文件的地方。如果未指定,系统会使用默认的临时文件夹。

3. upload_max_filesize = 8m ;
允许上传文件大小的最大值,默认为2M。

4. post_max_size = 8m ;
表单POST给PHP所能接收的最大值,包括表单里的所有值,默认为8M。

设置好上述四个参数后,在网络正常的情况下,上传<=8M的文件是不成问题的。但如果要上传>8M的大体积文件,还需要进一步配置其他参数。

二、进一步配置以下参数

1. max_execution_time = 600 ;
每个PHP页面运行的最大时间值(秒),默认30秒。

2. max_input_time = 600 ;
每个PHP页面接收数据所需的最大时间,默认60秒。

3. memory_limit = 8m ;
每个PHP页面所吃掉的最大内存,默认8M。


max_execution_time = 600
max_input_time = 600
memory_limit = 32m
file_uploads = on
upload_tmp_dir = /tmp
upload_max_filesize = 32m
post_max_size = 32m
    

修改以上参数后,在网络允许的正常情况下,就可以上传大体积文件了。

三、重启 php 服务,使配置生效

service php-fpm restart
systemctl restart php-fpm

四、修改编辑器上传大小设置

文件路径/core/extend/ueditor/php/config.json
将包含MaxSize后面的字段大小调大,如imageMaxSize、scrawlMaxSize等,都调整一下大小。

注意:

IIS上也会有限制。在IIS中,可以通过网站-》选要改的网站-》请求筛选-》进入-》右键-》编辑功能设置请求筛选设置,将允许最大内容长度从30000000改成100000000 或者更大(30M改成100M或者更大)。

如果你的主机是 nginx 操作系统的话,记得在nginx 的配置文件里面加上 client_max_body_size 20m; 这样一句,表示最大允许上传20MB,具体根据自己的情况来。我的nginx 配置文件的位置在 /usr/local/nginx/conf/nginx.conf。