WordPress 核心版本升级的权限问题
Posted
技术标签:
【中文标题】WordPress 核心版本升级的权限问题【英文标题】:Permissions Issue on Wordpress Core Version Upgrade 【发布时间】: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 【参考方案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/
上述链接线程中的最后一篇文章表明,这种上下文变化缓解了您所看到的错误。
顺便说一句,为了您的系统安全,请确保您将文件权限改回默认设置。
【讨论】:
以上是关于WordPress 核心版本升级的权限问题的主要内容,如果未能解决你的问题,请参考以下文章
xcode7.3 升级 xcode8.0 后权限设置问题(升级xcode 8.0 后构建版本不显示问题)