Error in phpMyAdmin after updating to v4.8.0: The $cfg['TempDir'] (./tmp/) is not accessible

前端 未结 20 2361
别跟我提以往
别跟我提以往 2021-01-30 12:50

phpMyAdmin worked fine with v4.7.9. Now after updating to v4.8.0 today (replacing the old phpmyadmin folder against the new one) I\'m getting this mess

相关标签:
20条回答
  • 2021-01-30 13:00

    From the phpMyAdmin documentation:

    $cfg['TempDir']
        Type:   string
        Default value:  './tmp/'
    

    The name of the directory where temporary files can be stored. It is used for several purposes, currently:

    The templates cache which speeds up page loading. ESRI Shapefiles import, see 6.30 Import: How can I import ESRI Shapefiles?.

    To work around limitations of open_basedir for uploaded files, see 1.11 I get an ‘open_basedir restriction’ while uploading a file from the import tab..

    This directory should have as strict permissions as possible as the only user required to access this directory is the one who runs the webserver. If you have root privileges, simply make this user owner of this directory and make it accessible only by it:

    chown www-data:www-data tmp
    chmod 700 tmp
    

    If you cannot change owner of the directory, you can achieve a similar setup using ACL:

    chmod 700 tmp
    setfacl -m "g:www-data:rwx" tmp
    setfacl -d -m "g:www-data:rwx" tmp
    

    If neither of above works for you, you can still make the directory chmod 777, but it might impose risk of other users on system reading and writing data in this directory.

    0 讨论(0)
  • 2021-01-30 13:00

    In my case [MacOs El Capitán/portuguese], the message was:

    The $cfg['TempDir'] (./temp/) is not accessible
    

    My solution, in xamppfiles/phpmyadmin/config.inc.php:

    $cfg['TempDir'] = './temp/'; to $cfg['TempDir'] = '../temp/';
    

    That is, I just added a point to the path... work's fine.

    0 讨论(0)
  • 2021-01-30 13:00

    I had a similiar problem, with the "temp" directory. The solution was to change the owner and group of the "twig" directory (inside "temp") to "apache" (both owner and group)

    0 讨论(0)
  • 2021-01-30 13:00

    My Answer goes to centos 7 Sentora users, tmp folder has to be created under phpMyadmin of Sentora as shown below

    cd /etc/sentora/panel/etc/apps/phpmyadmin/
    sudo mkdir tmp

    After creating the folder make sure you give Apache access permissions to the tmp folder

    chown -R apache /etc/sentora/panel/etc/apps/phpmyadmin/tmp/

    0 讨论(0)
  • 2021-01-30 13:02

    simply go to the phpmyadmin folder and put this code

    $cfg['TempDir'] = './tmp/';

    and then check tmp folder is exists or not into phpmyadmin if not exists then create tmp folder and give read and right permission to it.

    0 讨论(0)
  • 2021-01-30 13:03

    I had this same problem on Ubuntu 18.04 when I replaced the phpMyAdmin version from the package repository (v4.6.6) with the latest version (4.8.0). I don't know if you are running on Ubuntu, but maybe my response will be helpful to you (or others) who encounter something similar.

    I put the new version in the standard location, /usr/share/phpmyadmin/, but Ubuntu's package installation of PMA puts some configuration settings in other places (see /etc/phpmyadmin/ and /var/lib/phpmyadmin/). I found this setting in /etc/phpmyadmin/apache.conf:

    php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
    

    and sure enough that directory had been created and had the proper permissions. Wanting to stay as close as possible to the package installation settings, I made this change in /usr/share/phpmyadmin/libraries/vendor_config.php and pointed directly to that folder:

    //define('TEMP_DIR', './tmp/');
    define('TEMP_DIR', '/var/lib/phpmyadmin/tmp/');
    

    This setting is picked up by /usr/share/phpmyadmin/libraries/config.default.php (which you are not supposed to edit) to set $cfg['TempDir'].

    0 讨论(0)
提交回复
热议问题