使用技巧

如何解决WordPress中最大上传和php内存限制问题?

与上传和内存限制有关的典型警告消息

在WordPress网站上工作时,有时可能会看到以下类型的警告。

  • 警告讯息内容的位元组长度超过限制…
  • 上传的文件超过了php.ini中的upload_max_filesize指令…
  • 超过此网站的最大上传大小…
  • 致命错误:在1000行的/home/your-username/public_html/wp-includes/plugin.php中,耗尽了12345678字节的允许内存大小(试图分配2345678字节)…
  • 413错误:请求实体太大
  • 确定要这么做吗? ”

=>这些消息通常与您的网站的服务器设置有关,以获取最大上传大小或内存限制。

检查您当前的系统设置

首先,检查您当前的服务器内存设置。

在Customizr或  Customizr Pro WordPress主题中,我们具有一项功能,可让您轻松检查系统信息。解决错误时这将很有帮助。

  1. 对于Customizr Pro主题,您可以在WordPress管理->外观->关于Customizr Pro中找到它
  2. 对于Customizr主题,您可以在WordPress管理->外观->关于Customizr中找到它
  3. 向下滚动页面,您将看到“系统信息”部分。

文件超出了upload_max_filesize

在安装Customizr Pro主题时,您可能会遇到以下错误消息。

上传的文件超过了php.ini中的upload_max_filesize指令

请查看以下屏幕截图。

或上传图片时出现以下错误。

..超出此网站的最大上传大小。

请查看以下屏幕截图。

当您在php.ini文件中设置的PHP上载最大文件大小(upload_max_filesize)小于Customizr Pro Theme的文件大小或尝试上载的图像的文件大小时,就会发生这种情况。

在撰写本文时,Customizr Pro Theme(zip文件)的文件大小为11.2M。

在系统信息中查看PHP Upload Max Filesize的价值,您需要将其增加到一个更高,更健康的值。

解决方案

以下是一些可用于解决WordPress中超出上传上限文件大小问题的解决方案。

联系您的托管公司

是的,这是最可取的方式。请与您的托管公司联系,并向他们显示您的错误的屏幕截图,或通过电子邮件将错误消息发送给他们。让他们通过增加以下值来提供帮助,直到您能够安装主题或上传图像。您的托管公司可能对这些值有限制。

memory_limit
upload_max_size
post_max_size
upload_max_filesize
max_execution_time
max_input_time

优选为以下值。

内存限制= 256M
upload_max_size = 64M
post_max_size = 64M
upload_max_filesize = 64M
max_execution_time = 300
max_input_time = 1000

编辑php.ini文件

在  php.ini文件是PHP的默认配置文件。大多数共享主机公司不允许访问此文件。如果确定可以访问服务器上的php.ini文件,则可以继续以下步骤。

  1. 使用您的FTP程序访问它。(如何在WordPress中使用FTP软件?
  2. 在尝试编辑该文件之前,请备份该文件的副本。
  3. 打开它并一次查找以下值(它们位于文件中的不同行)
    memory_limit
    upload_max_size
    post_max_size
    upload_max_filesize
    max_execution_time
    max_input_time
    
  4. 最好将它们编辑为以下值。
    内存限制= 256M
    upload_max_size = 64M
    post_max_size = 64M
    upload_max_filesize = 64M
    max_execution_time = 300
    max_input_time = 1000
    

使用.htaccess文件

在WordPress中,有一个.htaccess文件。WordPress使用此文件来操纵Apache(服务器)如​​何从其根目录和子目录提供文件。因此,此文件非常重要。不要编辑此文件中的原始内容。您可以在文件末尾添加一些指令以增加PHP Upload Max Filesize。  在此处了解有关WordPress中htaccess文件的更多信息

  1. 使用您喜欢的FTP程序访问WordPress安装。
  2. 转到根目录,即您可以在其中找到wp-config.php文件的目录。您应该能够找到您的.htaccess文件。
  3. 将其副本下载到计算机上以另存为备份。
  4. 打开它,并将以下内容添加到文件末尾的换行符中。
    php_value memory_limit 256M
    php_value upload_max_filesize 64M
    php_value post_max_size 64M
    php_value max_execution_time 300
    php_value max_input_time 1000
    
  5. 保存所做的更改并覆盖服务器上的.htaccess文件。
  6. 返回您的系统信息,并检查您的值是否已更改。如果没有,您应该与您的托管公司联系,以获取有关在php.ini文件中编辑这些值的帮助。

致命错误:内存耗尽

如果您在网站上或间歇性地以及在不同的网页中遇到白屏。在wp-config.php中将WP_DEBUG设置为true。如果您在屏幕上或服务器错误日志中看到类似于以下错误消息的内容

致命错误:在1000行的/home/your-username/public_html/wp-includes/plugin.php中,耗尽了12345678字节的允许内存大小(尝试分配2345678字节)。

这意味着您的PHP没有足够的内存来正常工作。

解决方案

以下是一些可用于解决内存耗尽问题的解决方案。

联系您的托管公司

如上所述,这是首选方式。向他们显示您的错误的屏幕截图,或向他们显示错误消息。请他们帮助增加PHP内存,直到您能够使站点正常工作。

修改您的wp-config.php

您可以尝试在wp-config.php中为WordPress添加一个内存定义,但是如果您定义的内存超出了服务器实际分配的内存,则此操作将无效。

  1. 使用您的ftp程序并导航到WordPress根目录。
  2. 找到您的wp-config.php并将副本下载到计算机作为备份。
  3. 使用纯文本编辑器或代码编辑器打开wp-config.php。
  4. 在文件末尾插入以下代码。
    define('WP_MEMORY_LIMIT','256M');
    	
  5. 保存并将wp-config.php上传回WordPress安装。
  6. 清除浏览器缓存,然后重新加载网站。
  7. 如果您仍然遇到错误,则应与您的网络托管公司联系以寻求帮助。

编辑php.ini文件

如果您有权访问php.ini文件。您可以尝试以下方法。

  1. 使用FTP程序,导航到您的托管服务器,然后查找php.ini文件。
  2. 下载并保留备份副本。
  3. 使用代码或纯文本编辑器将其打开。
  4. 查找以下内容。
    memory_limit
    	
  5. 将该值更改为更高的值。例如。
    内存限制= 256M
    	
  6. 保存并将php.ini上传回WordPress安装。
  7. 清除浏览器缓存,然后重新加载网站。
  8. 如果您仍然遇到错误,则应与您的网络托管公司联系以寻求帮助。

使用.htaccess文件

  1. 使用FTP程序访问WordPress安装。
  2. 转到根目录,该目录是您可以找到wp-config.php文件的目录。您应该能够找到您的.htaccess文件。
  3. 将其副本下载到计算机上以另存为备份。
  4. 打开它,并将以下内容添加到文件末尾的换行符中。
    php_value memory_limit 256
    	
  5. 保存所做的更改并覆盖服务器上的.htaccess文件。
  6. 返回您的系统信息,并检查您的值是否已更改。如果没有,您应该与您的托管公司联系,以获取有关在php.ini文件中编辑这些值的帮助。