PHPアップグレード後のWordPressの更新エラーとその対処

WordPressの更新時に「要求されたアクションを実行するには、WordPress が Web サーバーにアクセスする必要があります。」などと表示され、今まで表示されたことのなかったFTPアカウント情報の入力を促されました。

いろいろと調べたところ、見つかったページの中はおおよそ「chown -R …」でオーナーを変更する、もしくはwp-config.phpに「define(‘FS_METHOD’,’direct’);」を追記するというものでした。しかし、私の環境ではこれらでは改善できませんでした。

ただアクセス権限の問題であることは明らかです。ふと思い出すのは先日、サーバー環境を大幅に更新したことです。その中にPHPのアップグレードが含まれていました。

アクセス権限といえばファイルやディレクトリーだけでなく、そもそもPHPはどのユーザーで動いているのか、という反対側=アクセスする側も問題です。”ps -auxw | grep php”などとして確認したら「apache」で動いているではありませんか。

このサーバーはnginxで動かしているので、当然、アクセス権限もnginxに合わせています…。PHPのアップグレード時に実行ユーザー・グループが引き継がれていなかったことが原因でした。

「/etc/php-fpm.d/www.conf」にある該当箇所を以下のように修正することで解決しました。

;user = apache
user = nginx
; RPM: Keep a group allowed to write in log dir.
;group = apache
group = nginx

apacheで動かしていて部分をnginxに書き換え、「/etc/init.d/php-fpm restart」で再起動で完了です。

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です