虽然路径正确,但我的网站图片都没有加载。在我的Apache日志中,我有很多:
(13)Permission denied: [client 87.231.108.18:57108] AH00035: access to
my/file/path/some-photo.jpg denied because search permissions are missing
on a component of the path
在httpd.conf
档案中:
User apache
Group apache
一直到我的网站目录,文件夹归apache:apache
所有,chmod
一直设置为774
。
SELinux布尔httpd_can_network_connect
一直是On
。
我正在使用.htaccess
文件将我的域名重定向到相应的目录。我怀疑这可能是导致这个问题但是......这只不过是一种直觉。
我确实需要帮助,欢迎提出任何建议。 非常感谢!
修改 .htaccess文件的内容:
RewriteEngine On
Options +FollowSymLinks
RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} www\.domain\.com
RewriteRule (.*) /domain/$1 [L]
答案 0 :(得分:16)
我终于找到了!感谢Justin lurman将.htaccess文件排除在外。这让我发现Wordpress没有权利再编辑我的.htaccess文件了。 这更奇怪,因为我100%确定权限是好的(如果你问我,甚至太宽容了)。
所以我调查了SElinux,因为我知道它有时可以在我身上耍花招而且我是对的。 发出以下命令解决了它:
chcon -R --type=httpd_sys_rw_content_t wp-content/
我希望能帮助别人:)
答案 1 :(得分:13)
在我的情况下,包含文件夹没有+ x权限,将其更改为755就可以了。
答案 2 :(得分:3)
或者你可以运行
find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
在这些文件夹中......
答案 3 :(得分:0)
setsebool -P httpd_enable_homedirs 1
chcon -R -t httpd_sys_content_t / home / user / public_html
答案 4 :(得分:0)
对我有用的是,路径中的所有组件目录都需要对所有组件具有执行权限
因此,如果网站的路径是/ home / user1 / public_html / docroot
chmod +x /home/user1/
chmod +x /home/user1/public_html/
chmod +x /home/user1/public_html/docroot/
答案 5 :(得分:0)
在macOS上,这可能是由于用户组权限问题引起的。
转到httpd.conf
文件(如果Apache由Homebrew安装,则位于/usr/local/etc/httpd
)。找到<IfModule unixd_module>
,然后将User
前面的值更改为您的计算机用户名(用于登录)。重新启动Apache。
如果将Apache与PHP-FMP一起使用,则也需要这样做。
找到php-fpm.conf
文件(通常位于/usr/local/etc/php/7.x/
并找到池定义:
取消注释include=/usr/local/etc/php/7.x/php-fpm.d/*.conf
(如果有注释)并保存文件。现在打开最近未注释的文件并找到user =
,并将user的值更改为您的计算机用户名。现在重新启动PHP服务。