我不断收到“缺少临时文件夹”错误?

问题描述 投票:0回答:4

很抱歉用一个可能是新手的问题来打扰大家,但我对我的 WordPress 安装中的“缺少临时文件夹”问题感到震惊。这几天我一直在寻找解决方案,搜索论坛、StackExchange 和各种来源。其中许多人说要联系我的主机,因为这可能是服务器配置问题,我这样做了,他说他在 .php 目录下重新创建了一个“tmp”文件夹。不幸的是,我仍然收到“缺少临时文件夹”错误。

我在我的 SFTP 服务器上包含了文件夹的路径/层次结构的图像,该服务器正在运行 nginX:

我尝试过包括该行

define('WP_TEMP_DIR', 'DIRECTORY')
(其中 DIRECTORY 是 .php 中临时文件夹的地址/路径)但这并没有解决问题。

然后我尝试包括

define('WP_TEMP_DIR', dirname(__FILE__) . '/wp-content/temp/')
(这次逐字)第一行代码被注释掉。

这段代码导致了 HTTP:// 500 错误。如果我注释掉上面的行,该网站工作正常(除了缺少临时文件夹问题),所以这是导致问题的代码,但我想知道它导致 500 错误的事实是否意味着我已经接近了(我可能只是在欺骗自己)。

如果这是一个错误的地方,或者是一个愚蠢的问题,我深表歉意,我对 WordPress 和 PHP 是全新的,并且(除了这个问题)喜欢它,但我似乎无法解决它!

wordpress forms temp
4个回答
0
投票

尝试此链接:

https://wordpress.stackexchange.com/questions/165184/missing-a-temporary-folder-尽管-settings-in-wp-config-php

如果没有帮助,请尝试备份 tmp 文件夹 -> 删除 tmp 文件夹 -> 重新创建。有时,tmp 中存储的垃圾数据可能会导致此问题。


0
投票

在 WordPress 根目录中创建一个具有 777 权限的“temp”文件夹。这可以通过您的 FTP 程序来完成。

编辑您的“php.ini”文件

在 php.ini 文件中添加以下内容:

upload_max_filesize = 16M

upload_tmp_dir = on

upload_tmp_dir = /home/username/public_html/wordpressDir/temp

0
投票

我不小心从我的计算机(Macbook)中删除了 tmp 文件夹,并在本地主机 WordPress 网站上遇到了该问题,并按照以下步骤解决了该问题:

  1. 首先,必须通过以下代码检查临时文件夹位置。

    var_dump(sys_get_temp_dir());
    在我的例子中,输出是 /var/tmp

  2. 然后,我们必须通过以下代码检查该文件夹是否存在。

    var_dump(file_exists(sys_get_temp_dir()));
    就我而言,该文件夹不存在,因为我已经删除了该文件夹。

  3. 如果该文件夹不存在,则创建一个名为tmp的新文件夹。 打开终端并导航到文件夹

    /private/var
    并创建一个名为 tmp 的新文件夹。

  4. 如果问题还没有解决,或者文件夹已经存在,那么我们必须检查文件夹的权限。


0
投票

要检查并验证托管提供商配置中的

upload_tmp_dir
设置,请按照以下步骤操作:

使用
phpinfo()
方法

  1. 创建 PHP 信息文件: 在 Web 服务器的文档根目录中创建一个名为

    phpinfo.php
    的新 PHP 文件(例如
    /var/www/html
    )。

    <?php
    phpinfo();
    ?>
    
  2. 访问 PHP 信息文件: 打开网络浏览器并导航至

    http://your-domain.com/phpinfo.php
    。这将显示 PHP 配置信息。

  3. 搜索

    upload_tmp_dir
    : 在输出中查找
    upload_tmp_dir
    指令。如果已设置,它将显示临时目录的路径。

检查和配置
php.ini

  1. 找到

    php.ini
    文件: 您可以从
    php.ini
    输出中找到
    phpinfo()
    的位置或使用通用路径。例如,如果您在 Ubuntu 中使用 PHP-FPM,则路径通常为:

    /etc/php/{version}/fpm/php.ini
    

    {version}
    替换为您的 PHP 版本,例如
    7.4

  2. 编辑

    php.ini
    文件: 在文本编辑器中打开
    php.ini
    文件。例如,使用
    nano
    :

    sudo nano /etc/php/{version}/fpm/php.ini
    
  3. 查找并设置

    upload_tmp_dir
    : 搜索
    upload_tmp_dir
    设置。您可以通过按
    Ctrl + W
    中的
    nano
    并输入
    upload_tmp_dir
    来完成此操作。

    • 如果存在

      upload_tmp_dir
      ,请将路径更新为所需的临时目录。

    • 如果不存在,请添加以下行来指定路径:

      upload_tmp_dir = /path/to/your/temp/folder
      

      /path/to/your/temp/folder
      替换为您希望 PHP 存储临时文件的实际目录路径(例如,
      /var/lib/php/sessions
      )。

  4. 保存并退出: 保存更改并退出编辑器(例如,按

    Ctrl + X
    ,然后按
    Y
    确认
    nano
    中的更改)。

  5. 重新启动 PHP-FPM 和 Web 服务器: 重新启动 PHP-FPM 和您的 Web 服务器(Nginx 或 Apache)以应用更改。例如:

    sudo systemctl restart php{version}-fpm
    sudo systemctl restart nginx
    

    {version}
    替换为您的 PHP 版本(例如,
    7.4
    )。

补充说明

  • 确保
    upload_tmp_dir
    的指定目录具有正确的权限,以便 PHP 可以对其进行写入。
  • 进行更改后,如果遇到文件上传问题,最好检查 PHP 错误日志。
© www.soinside.com 2019 - 2024. All rights reserved.