【发布时间】:2013-03-14 11:47:18
【问题描述】:
今天我将图像从一台服务器迁移到另一台服务器,遇到了一个奇怪的权限问题
[Mon Mar 25 08:42:23.676315 2013] [core:crit] [pid 15182] (13)Permission denied: [client 24.14.2.22:48113] AH00529: /files/domain.com/public_html/images/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable and that '/files/domain.com/public_html/images/' is executable, referer: http://domain.com.com/file.php
我尝试过的:
chmod -R 777 root_dir
restorecon -r
disable selinux
Chown -R root:root root_dir
【问题讨论】:
-
那是aufs中的一个bug,一些磁盘权限错误。
-
除了根目录本身之外,您还需要 Web 服务器的用户可以读取所有父目录。
-
chmod -R 777 是一件非常危险的事情。它使每个目录和文件世界都可写和可执行。如果您想让 root_dir world 下的每个文件都可读,并且 root_dir world 下的每个 dir 都可以执行(这样每个人,包括 Web 服务器,都可以在知道名称的情况下访问文件),更安全的选择是
find root_dir -type f -print0|xargs -0 chmod o+r;find root_dir -type d -print0|xargs -0 chmod o+x如果您希望世界能够在每个目录上执行ls或readdir,请替换 o+rx。
标签: linux apache security permissions nginx