Права доступа к файлам Wordpress нарушены после обновления php56w с 5.6.31 до 5.6.35 - PullRequest
0 голосов
/ 07 мая 2018

В прошлую пятницу я обновил установку php моего блога Wordpress с php 5.6.31 до php 5.6.35. Блог использует FastCGI и Apache для обслуживания трафика, а сервер работает под управлением CentOS 7. После обновления права доступа к файлам Wordpress, похоже, нарушены. Я не могу загружать файлы в записи блогов, обновлять плагины или обновлять сам Wordpress.

Сначала при попытке обновить Wordpress у меня запрашивались учетные данные FTP, которые я никогда не использовал в прошлом. Поэтому я добавил define('FS_METHOD', 'direct'); в свой wp-config.php. Это позволило добиться прогресса, но я получаю ошибки, которые подразумевают проблемы с правами доступа к файлам, хотя, насколько я могу судить, они правильные.

Все файлы для WordPress находятся в /var/www/html, который принадлежит apache:apache. Файлы в основном 0644, а папки 0755, и ни один из них не изменился с момента обновления. httpd работает как apache, как и php-fpm. Попытка обновить сам WordPress показывает:

Downloading update from https://downloads.wordpress.org/release/wordpress-4.9.5-no-content.zip…

Unpacking the update…


Warning: copy(/var/www/html/wp-admin/includes/update-core.php): failed to open stream: Permission denied in /var/www/html/wp-admin/includes/class-wp-filesystem-direct.php on line 243
The update cannot be installed because we will be unable to copy some files. This is usually due to inconsistent file permissions.: wp-admin/includes/update-core.php

Installation Failed

Мне интересно, могло ли обновление php каким-либо образом изменить конфигурацию php и, как таковое, нарушить доступ php к блогу. Это не похоже на права доступа к файлам, хотя каждая ошибка предполагает, что это так. Например, я могу sudo -u apache touch /var/www/html/wp-admin/includes/test просто отлично.

Вот как выглядит мой /etc/httpd/conf.d/php.conf:

# Cause the PHP interpreter to handle files with a .php extension.
#
<FilesMatch \.php$>
SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>

#AddHandler php5-script .php
AddType text/html .php

#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php

#
# Uncomment the following line to allow PHP to pretty-print .phps
# files as PHP source code:
#
#AddType application/x-httpd-php-source .phps

#
# Apache specific PHP configuration options
# those can be override in each configured vhost
#
php_value session.save_handler "files"
php_value session.save_path    "/var/lib/php/session"
#php_value soap.wsdl_cache_dir  "/var/lib/php/wsdlcache"

Вот транзакция yum:

Updated php56w-5.6.31-1.w7.x86_64          @webtatic
Update         5.6.35-1.w7.x86_64          @webtatic
Updated php56w-bcmath-5.6.31-1.w7.x86_64   @webtatic
Update                5.6.35-1.w7.x86_64   @webtatic
Updated php56w-cli-5.6.31-1.w7.x86_64      @webtatic
Update             5.6.35-1.w7.x86_64      @webtatic
Updated php56w-common-5.6.31-1.w7.x86_64   @webtatic
Update                5.6.35-1.w7.x86_64   @webtatic
Updated php56w-dba-5.6.31-1.w7.x86_64      @webtatic
Update             5.6.35-1.w7.x86_64      @webtatic
Updated php56w-devel-5.6.31-1.w7.x86_64    @webtatic
Update               5.6.35-1.w7.x86_64    @webtatic
Updated php56w-fpm-5.6.31-1.w7.x86_64      @webtatic
Update             5.6.35-1.w7.x86_64      @webtatic
Updated php56w-gd-5.6.31-1.w7.x86_64       @webtatic
Update            5.6.35-1.w7.x86_64       @webtatic
Updated php56w-intl-5.6.31-1.w7.x86_64     @webtatic
Update              5.6.35-1.w7.x86_64     @webtatic
Updated php56w-mbstring-5.6.31-1.w7.x86_64 @webtatic
Update                  5.6.35-1.w7.x86_64 @webtatic
Updated php56w-mcrypt-5.6.31-1.w7.x86_64   @webtatic
Update                5.6.35-1.w7.x86_64   @webtatic
Updated php56w-opcache-5.6.31-1.w7.x86_64  @webtatic
Update                 5.6.35-1.w7.x86_64  @webtatic
Updated php56w-pdo-5.6.31-1.w7.x86_64      @webtatic
Update             5.6.35-1.w7.x86_64      @webtatic
Updated php56w-process-5.6.31-1.w7.x86_64  @webtatic
Update                 5.6.35-1.w7.x86_64  @webtatic
Updated php56w-soap-5.6.31-1.w7.x86_64     @webtatic
Update              5.6.35-1.w7.x86_64     @webtatic
Updated php56w-xml-5.6.31-1.w7.x86_64      @webtatic
Update             5.6.35-1.w7.x86_64      @webtatic

У кого-нибудь есть идеи относительно того, как можно попытаться устранить эту проблему, если это на самом деле вызвано изменением конфигурации, вызванным обновлением php? К сожалению, история отмены yum [x] не работает для меня, поэтому я думаю, что мне, возможно, придется с этим разобраться.

Спасибо за любую помощь, которую вы можете предоставить.

1 Ответ

0 голосов
/ 07 мая 2018

Проблема была вызвана SELinux. В sudo setenforce permissive исправлена ​​проблема, поэтому мне нужно будет исправить политику.

...