Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Permissions Joomla目录权限不可写…但它们是!_Permissions_Joomla - Fatal编程技术网

Permissions Joomla目录权限不可写…但它们是!

Permissions Joomla目录权限不可写…但它们是!,permissions,joomla,Permissions,Joomla,我正在尝试将Joomla站点从我的开发服务器移动到客户端的实时服务器上。我正在安装一个新的副本Joomla的过程中。 我很好地完成了安装,为新站点粘贴了配置代码,但现在我无法更新任何站点设置或安装任何模块/插件/组件。我将所有文件夹更改为777,并通过终端多次检查这些设置。但是…当我在Joomla管理员中时,我会进入“帮助”>“系统信息”>“目录权限”,所有文件夹都会被读取为不可写入。我不知道这是为什么,我完全被困在这一点上,无法配置任何东西。 非常感谢您的任何帮助。 谢谢 当我第一次将Joom

我正在尝试将Joomla站点从我的开发服务器移动到客户端的实时服务器上。我正在安装一个新的副本Joomla的过程中。 我很好地完成了安装,为新站点粘贴了配置代码,但现在我无法更新任何站点设置或安装任何模块/插件/组件。我将所有文件夹更改为777,并通过终端多次检查这些设置。但是…当我在Joomla管理员中时,我会进入“帮助”>“系统信息”>“目录权限”,所有文件夹都会被读取为不可写入。我不知道这是为什么,我完全被困在这一点上,无法配置任何东西。 非常感谢您的任何帮助。 谢谢
当我第一次将Joomla安装到web托管服务上时,我也遇到了类似的问题。这是一个猜测,但它可能会帮助你

有些Joomla页面无法保存,因为configuration.php具有错误的权限。我试图通过FTP更改此设置,但CHMOD命令失败。最初,我通过将configuration.php复制到另一台机器上,从服务器上删除它,然后将其复制回来,从而绕过了它。这解决了管理问题。不幸的是,它造成了一个安全问题

正确的解决方案是在Joomla全局配置页面中定义FTP帐户和密码。Joomla通过将权限设置为777,在幕后使用该帐户修改configuration.php帐户,而不向黑客开放。我有一篇关于为什么这样做有效的文章,但我现在找不到参考资料


如果已将所有文件权限更改为777,则可能使Joomla安装处于不安全状态。我建议将它们恢复为默认值;或者只是重新安装,因为可能很难确定默认设置是什么。

您使用的joomla版本是什么

不幸的是,joomla在通过管理安装组件/模块/etc时确实存在一些问题,这使得已安装/上载的文件由root(服务器)而不是1.0.x版的用户(您)拥有

但新版本的joomla 1.5>使用新的FTP层(安装时要求您进行FTP身份验证的表单)修复了该问题,假设您手动安装,而不是使用fantastico之类的自动脚本

也就是说,我使用了一个技巧。尝试登录您的Cpanel帐户,并使用内置的文件管理器删除文件,然后通过FTP重新上传文件,这样文件所有权就属于您了


请记住,这个问题不完全是joomla的错,它是一个已知的php文件上传问题。因此,如果您尝试在不使用joomla的FTP层的情况下安装/上载文件,则问题将持续存在。尝试更新joomla设置,并为上传和组件/模块/插件安装提供FTP身份验证。

简单问题和简单答案。。安装joomla时跳过FTP设置。。。这是关键。。填写FTP设置通过FTP上载joomla站点时使用这些设置,如果您没有足够的权限,joomla将使用这些设置来处理服务器目录结构

问题在于,您的FTP用户名没有Joomla在服务器上拥有的相同权限,这就是您出现此问题的原因


你应该联系你的系统管理员。

为了给未来的谷歌添加另一个答案,我今天遇到了这个问题。问题是SELINUX会悄悄地终止php写检查过程


快速而肮脏的修复方法是禁用SELINUX,但我相信您也可以在SELINUX中配置异常/规则,您需要以文件所有者的身份运行apache。在apache配置中更改以下内容:

使用您的用户名

将您的组名分组


设置web服务器帐户(apache)的权限

如果您使用XAMPP在OS X上运行WordPress进行本地开发,则您可能尝试上载core或插件,并在提示输入FTP连接信息时遇到以下错误:

要执行请求的操作,WordPress需要访问您的web服务器

这是因为默认情况下XAMPP在Mac上以用户
nobody
的身份运行,这会导致一些权限问题。此外,升级前WordPress会将文件写入系统,然后检查是哪个用户编写的文件。如果此文件与运行PHP的用户不匹配,即使存在写入权限,它也将拒绝升级。chmod 777不足以克服这一点;您还必须有正确的用户。我不知道他们为什么这么做,是否有技术上的原因,但这很烦人

解决方案:编辑您的
httpd.conf
,以作为用户和组工作人员的用户名运行

在文本编辑中打开
httpd.conf

sudo open -e /Applications/XAMPP/xamppfiles/etc/httpd.conf
更改:

User nobody
Group nogroup
致:

重新启动Xampp,这将解决问题;您可以通过在.php文件中运行来验证它是否工作

如果您仍然遇到问题,您可以检查一些其他事项。首先验证所有权(最可能的问题):

接下来确认权限(如果需要更高的安全性,可以更改777):

  • 将权限设置为777
  • 对日志和tmp使用完整路径 e、 g.:
    /var/www/vhosts/mydomain/httpdocs/tmp

  • 这是最有效的解决方案

  • 在根文件夹中创建configuration.php文件,并将代码粘贴到错误框中
  • 手动删除安装文件夹
  • Repete删除安装文件夹或F5以重复页面。
    希望它能帮助你

    那么configuration.php应该是755模式还是644模式?对不起,我也有这个问题。。。我的目录已设置为joomla文档的一般规则。但系统信息似乎告诉我
    User your_mac_username
    Group staff
    
    sudo chown -R your_mac_username:staff /path_to_webroot/www/
    
    sudo chmod -R 777 /path_to_webroot/www/