JFolder::create: Could not create directory - Joomla

后端 未结 4 1351
南笙
南笙 2021-01-12 13:53

I end up with below error when I try to install a component,module or plugin.

JFolder::create: Could not create directory

What could be th

相关标签:
4条回答
  • 2021-01-12 14:06

    Now I found two solutions for resolving this issue,and both of them has been worked very well:

    Solution One:

    First find the exact absolute path to your tmp folder by using this trick:

    Create a PHP file in your website root,for example path.php

    Place this snippet of code in the file and hit the save button

    <?php
    $path = getcwd();
    echo "Your Absolute Path is: ";
    echo $path;
    ?>
    

    Navigate to yourdomain.com/path.php in your browser

    From now on:

    1. Login to your Joomla Administartor panel.
    2. Go to Global Configuration
    3. Click on the "Server" tab
    4. Change the path to the "Absolute Path(you've just found)"/tmp
    5. Insert this line of code in your .htaccess file: php_value open_basedir NULL

      This solution has been worked very well for me,and it's doesn't deal with any Joomla's core file hacking.

    Solution Two:

    1. Login to your Joomla Administartor panel.
    2. Go to Global Configuration
    3. Click no the "Server" tab
    4. Change the path from /public_html/tmp to just tmp
    5. Login to control Panel(CPanel),(Or you can use a FTP account for this purpose)
    6. Open File Manager (if you are using FTP,this step must be skipped)
    7. Open Folder "libraries"
    8. Open Folder "joomla"
    9. Open Folder "filesystem"
    10. Right Click on "folder.php" and click Edit.
    11. Look for the line, (search = obd): $obd = ini_get('open_basedir'); Comment out that line with // at the beginning so it becomes://$obd = ini_get('open_basedir');
    12. Save and Close.
    0 讨论(0)
  • 2021-01-12 14:12

    You can change the owner of Joomla folders to your apache server user.

    You can find the apache server user with the following command:

    ps aux | grep -v root | grep apache | cut -d\  -f1 | sort | uniq
    

    Source: https://serverfault.com/questions/125865/finding-out-what-user-apache-is-running-as

    For Ubuntu, it's www-data.

    After you know the apache user name, then you can change the owner of all the folders and files of your Joomla installation. You can use the following command to do so:

    (I suppose that your apache user is www-data)

    sudo chown -R www-data:www-data /path/to/your/joomla
    

    If you are already inside your Joomla directory, then you can run the following command:

    sudo chown -R www-data:www-data .
    
    0 讨论(0)
  • 2021-01-12 14:14

    Change the below variable to in your configuration file(configuration.php) as shown.

    public $log_path = '/logs';
    public $tmp_path = '/tmp';
    

    Also make sure that these folder has the folder permission 755.

    Read more

    0 讨论(0)
  • 2021-01-12 14:28

    After a lot of trouble with this error, I got a break through. In the configuration.php file, edit the var logpath n tmppath values as below var $log_path = '/home/public_html/sitename/logs'; var $tmp_path = '/home/public_html/sitename/tmp';

    This definately will work. And works for me.

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