wordpress媒体库的默认上传大小限制为2M,今天上传文件时发现原来的设置php.ini不起作用了,后来查了下资料,我的环境是docker搭建的站点,同时起用了nginx反向代理,因此要在nginx配置文件里做修改。

网上普遍提供了3种解决方案:

  • 在functions.php中添加代码(无果)
    @ini_set( 'upload_max_size' , '64M' );
    @ini_set( 'post_max_size', '64M');
    @ini_set( 'max_execution_time', '300' );
  • php.ini(无果)
    在你的主机空间的根目录新建一个php.ini文件,里面使用如下代码:

    upload_max_filesize = 64M
    post_max_size = 64M
    max_execution_time = 300
  • .htaccess(无果)
    在网站根目录的 .htaccess 文件中添加如下代码:

    php_value upload_max_filesize 64M
    php_value post_max_size 64M
    php_value max_execution_time 300
    php_value max_input_time 300

    Wordpress上传文件2M限制更改插图

前面三种方式,我使用了第三种.htaccess的方案。如果设置正确,此时打开媒体库应该是下面这种提示:
Wordpress上传文件2M限制更改插图1

看上去在正常的wordpress环境下,已经完全OK了。但是上传超过2M的文件时,提示HTTP错误或是上传失败。通过nginx反代的wordpress容器,是因为nginx限制的问题。

于是打开nginx的做配置文件,在http包含内添加一下内容:

client_max_body_size 64m;

上传完美解决。


0 条评论

发表评论

Avatar placeholder