php - Drupal 8.8.5 上奇怪的文件/文件夹权限错误

标签 php apache drupal centos drupal-8

我在 Drupal 8.8.5、CentOS Linux 版本 7.5.1804、PHP 7.2.19 和 HTTPD - Apache/2.4.6 上遇到了非常奇怪的行为

基本上,在更新到 8.8.5 之后(这真是令人头疼),系统在“刷新缓存”上刷新 css+js 文件时会抛出错误。

Drupal\Core\File\Exception\FileException: Failed to unlink file 'public://css/css_Y3zRgmC0P7yIXk_w_H9qyrPs3aMkKRv44SMfupbSCMc.css.gz'. in Drupal\Core\File\FileSystem->delete() (line 340 of/var/www/html/project/core/lib/Drupal/Core/File/FileSystem.php).

Warning: unlink(/var/www/html/project/sites/default/files/css/css_Y3zRgmC0P7yIXk_w_H9qyrPs3aMkKRv44SMfupbSCMc.css.gz): Permission denied in Drupal\Core\File\FileSystem->unlink() (line 124 of /var/www/html/synergie/core/lib/Drupal/Core/File/FileSystem.php)

这显然会导致糟糕的前端和管理面板行为。

我确实已经尽我所能,通过:

  1. 将所有 777 设置到 /var/www/html/project/sites/default 和子目录
  2. 更改上述目录的所有者
  3. 手动调试 lib/Drupal/Core/File/FileSystem.php 的第 124 和 340 行

我发现很奇怪的是,通过手动调试 FileSystem.php 上的 unlink 方法,它会导致一些奇怪的结果:

public://css/css_Y3zRgmC0P7yIXk_w_H9qyrPs3aMkKRv44SMfupbSCMc.css.gz:可读可写

/var/www/html/project/sites/default/files/css/css_Y3zRgmC0P7yIXk_w_H9qyrPs3aMkKRv44SMfupbSCMc.css.gz:可读但不可写

一些注意事项: - httpd 在 apache 用户和 apache 组上运行

  • 我已尝试对/var/www/html/project/sites/的每个目录和子目录进行文件夹和写入权限以及所有者和组的所有可能组合/p>

  • 我已经尝试按照这些说明进行操作:Web Archive

  • 我还运行了这个“文件夹和文件权限脚本”:Drupal Website

您有什么想法或建议吗?我不能超过这个

最佳答案

听起来像 SELinux 阻塞...

找到SELinux的当前模式并暂时关闭它。

Getenforce # see current mode.
Sudo setenforce 0 # shut it down.

尝试你的东西。如果是这样,只需添加规则以允许/var/www/your Docroot 等位置

关于php - Drupal 8.8.5 上奇怪的文件/文件夹权限错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61414218/

相关文章:

php - 获取周末后即将举行的比赛

apache - 在 Magento 中使用结帐异常将 HTTPS 重定向到 HTTP (Apache)

java - Tomcat 或 Apache 容器修改了我的响应

java - 使用 HttpComponents 基于客户端证书的身份验证

drupal - 将类添加到 drupal 主体

php - 在 Laravel 5 中进行动态导航的正确方法

php - 将 $_POST 变量格式化为准备好的语句

php - 数据库问题,没有正确回显数据

DRUPAL - 如何将用户 ID (UID) 添加到激活电子邮件或用户页面?

mysql - 测试MySql语句中的字段长度