通过joomla更改文件权限

时间:2010-10-06 13:44:23

标签: file permissions joomla

我在ubuntu 10.04下有一个默认的joomla安装。我还更改了模板的index.php(具有读写权限的apache用户)的权限,这样我就可以从管理员屏幕更改index.php。一切都很好,直到这里。

但是现在当我从管理界面更改文件并保存文件时,它会更改文件权限并从文件中删除写入权限。它确实保存了更改。

现在删除了写入权限,当我尝试安装模板时,它给了我错误。所以我必须在index.php上手动设置apache用户的写权限并再次安装模板,然后运行良好。

有没有人知道joomla是否正在更改文件权限,并且知道如何解决这个问题。

谢谢, Tanmay

1 个答案:

答案 0 :(得分:2)

您可能受umask设置的影响。将umask(0133);放入配置文件中(或任何您想要的地方,只需确保它在制作文件之前)。

背景资料:

  • r(读取)的值为4(二进制值:100
  • w(写)的值为2(二进制值:010
  • x(execute)的值为1(二进制值:001

可以将这些权限授予所有者,组和其他所有人(“其他”)。

在PHP中创建文件时,默认情况下会向其添加666。从该数字开始,使用按位AND删除umask值。看起来你是0333的umask。展示所发生事件的最佳方式是展示它:

PHP adds: rw-rw-rw- 0666
umask   : -wx-wx-wx 0333
result  : r--r--r-- 0444

如果您使用的是umask 0133:

PHP adds: rw-rw-rw- 0666
umask   : --x-wx-wx 0133
result  : rw-r--r-- 0644