一聚教程网:一个值得你收藏的教程网站

热门教程

discuz上传限制太大怎么修改上传附件大小限制

时间:2022-06-25 16:23:51 编辑:袖梨 来源:一聚教程网

控制 php 的容许上传大小也有多种方式,一种全局控制 php.ini 文件,二是通过 .htaccess 文件控制

一、全局控制 php.ini 文件

1、开启文件上传

file_uploads = On

2、内存大小

memory_limit = 128M // 在被取消之前,一个脚本可使用多少内存(字节)

3、增加 post 方式提交的数据大小
post_max_size = 100M

4、允许上传的最大上传文件大小
upload_max_filesize =100M

5、最大的输入时间。一个脚本等待输入数据的时间有多长(秒)
max_input_time = 60

6、增加进程执行的时间。一个脚本可使用多少 CPU 秒
max_execution_time = 300

从逻辑顺序上:memory_limit > post_max_size > upload_max_filesize,再加上一个前提 max_execution_time许可时间足够长。

二、在 .htaccess 中添加上述对应的设置值

php_value upload_max_filesize 100M
php_value post_max_size 100M
php_value max_execution_time 300

三、如果是nginx系统我们除了修改php配置还需要修改nginx中相关配置

1、修改/usr/local/nginx/conf/nginx.conf 文件,查找 client_max_body_size 将后面的值设置为你想设置的值。比如:

 代码如下 复制代码

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ .php$ {
            root           /home/www/htdocs;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME /home/www/htdocs$fastcgi_script_name;
            include        fastcgi_params;

            client_max_body_size 35m;        #客户端上传文件大小设为35M
            client_body_temp_path /home/www/nginx_temp;        #设置临时目录
}

注意:nginx中配置只需要对client_max_body_size进行设置就可以了,当然如果文件太大上传时间太长了,我还需要设置程序与nginx脚本超时时长哦。

nginx修改时间长keepalive_timeout 65;
php脚本时长只要在页面开始处加具set_limit_time(0)就可以了。

热门栏目