当我尝试安装组件,模块或插件时,我最终遇到以下错误。
JFolder::create: Could not create directory
可能是什么问题?
答案 0 :(得分:24)
如下所示,将以下变量更改为配置文件(configuration.php
)。
public $log_path = '/logs';
public $tmp_path = '/tmp';
还要确保这些文件夹具有文件夹权限755。
答案 1 :(得分:2)
现在我找到了解决这个问题的两个解决方案,并且它们都运行良好:
解决方案一:
首先使用此技巧找到tmp
文件夹的确切绝对路径:
在您的网站根目录中创建一个PHP文件,例如path.php
将此代码段放在文件中,然后点击“保存”按钮
<?php
$path = getcwd();
echo "Your Absolute Path is: ";
echo $path;
?>
导航至浏览器中的yourdomain.com/path.php
从现在开始:
"Absolute Path(you've just found)"/tmp
在.htaccess文件中插入以下代码行:php_value open_basedir NULL
这个解决方案对我来说非常好用,而且它不涉及任何Joomla的核心文件黑客攻击。
解决方案二:
/public_html/tmp
更改为tmp
$obd = ini_get('open_basedir');
在//开头注释//行,//$obd = ini_get('open_basedir');
答案 2 :(得分:1)
您可以将Joomla文件夹的所有者更改为您的apache服务器用户。
您可以使用以下命令找到apache服务器用户:
ps aux | grep -v root | grep apache | cut -d\ -f1 | sort | uniq
来源:https://serverfault.com/questions/125865/finding-out-what-user-apache-is-running-as
对于Ubuntu,它是www-data
。
知道了apache用户名后,就可以更改Joomla安装的所有文件夹和文件的所有者。您可以使用以下命令执行此操作:
(我猜你的apache用户是www-data
)
sudo chown -R www-data:www-data /path/to/your/joomla
如果您已经在Joomla目录中,则可以运行以下命令:
sudo chown -R www-data:www-data .
答案 3 :(得分:0)
在遇到这个错误后遇到很多麻烦,我得到了突破。
在configuration.php文件中,编辑var logpath n tmppath值,如下所示var $log_path = '/home/public_html/sitename/logs';
var $tmp_path = '/home/public_html/sitename/tmp';
这肯定会起作用。并为我工作。