【问题标题】:Permissions Issue on Wordpress Core Version UpgradeWordPress 核心版本升级的权限问题
【发布时间】:2020-11-27 01:41:52
【问题描述】:

我在数字海洋上有一个基于 centOS 的虚拟机。 它正在运行 NGINX HTTP 服务器。 我将其配置为使用多域,并设置了 SSL。

我的一个域运行一个 Wordpress 应用程序。 我从我的 godaddy 主机迁移了 WordPress 文件。

一切都很好,除非我尝试升级 wordpress 核心(更新和安装插件工作正常)。

当我尝试将 WordPress 升级到 5.4.2 版时,出现权限错误(如附件照片所示):

第 281 行 /var/www/mydomain.com/wordpress/wp-admin/includes/class-wp-filesystem-direct.php 中的权限被拒绝

wordpress core upgrade file permissions error display

我尝试执行以下操作来诊断问题...我对 nginx 用户具有目录完全访问权限: chmod -R 777 /var/www/

chown nginx:nginx /var/www/

不起作用

我通过在页面上输出 echo exec('whoami'); 来确定 php 用户是 nginx。

我完全傻眼了。 有谁知道可能是什么问题?

作为最后的手段,我使用 FTP 手动升级了我的 wordpress 版本,但我担心我从来没有弄清楚这个问题的根本原因,它会再次出现,打开一罐蠕虫。

【问题讨论】:

  • @esqew 哇,修复了它!谢谢! (虽然我必须编辑一个错字)sudo chcon -R --type=httpd_sys_rw_content_t /var/www/mydomain.com

标签: php wordpress nginx file-permissions


【解决方案1】:

CentOS 在其 Linux 内核中包含一个名为 SELinux 的强制访问控制 (MAC) 安全机制。根据a support forum thread on Wordpress.org 的说法,这种机制有时会导致出现此错误的问题。

SSH 到您的服务器并使用以下命令更改整个 /var/www/mydomain.com 文件夹的 SELinux“上下文”:

chcon -R –-type httpd_sys_rw_content_t /var/www/mydomain.com/

上述链接线程中的最后一篇文章表明,这种上下文变化缓解了您所看到的错误。

顺便说一句,为了您的系统安全,请确保您将文件权限改回默认设置。

【讨论】:

    猜你喜欢
    • 2021-03-12
    • 2019-02-16
    • 1970-01-01
    • 2020-07-18
    • 2017-08-06
    • 2010-12-06
    • 2011-01-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多