Insights

技術情報

【解決方法】WordPressの更新で「FTPアクセスを求められる」問題を修正する方法

【解決方法】WordPressの更新で「FTPアクセスを求められる」問題を修正する方法

WordPressを管理画面から更新しようとした際に、次のメッセージが表示されて更新できないことがあります。

「更新のためにFTP情報を入力してください」
「FTPサーバー、ユーザー名、パスワードを入力してください」

この現象は、サーバー上のファイル所有者とWordPressを実行しているPHPユーザーが一致していないために発生します。発生する仕組みと解決手順を解説します。

🧩 現象の概要

WordPressの管理画面から更新を実行すると、内部ではPHPがWordPressのファイルへ直接書き込みを行います。

しかし、サーバー上で以下のような状態になっていると書き込みエラーが起きます。

  • WordPressのファイル所有者が「admin」や「root」など別のユーザーになっている
  • PHPが「apache」や「nginx」ユーザーとして動作している

この状態ではPHPがファイルを直接変更できないため、WordPressは FTP経由で更新するモード(FTPモード) へ自動的に切り替わります。その結果、FTP接続情報の入力を求められます。

✅ 解決方法(推奨)

① ファイル所有者をPHP実行ユーザー(例:apache)に変更

SSHでサーバーにログインし、以下のコマンドでファイル所有者を変更します。

sudo chown -R apache:apache /var/www/html/wp

/var/www/html/wp はWordPressを設置しているパスに置き換えてください。
PHP実行ユーザーはOSや環境によって異なります。事前に以下のコマンドで確認してください。

# Apache系(CentOS/RHEL)で確認
ps aux | grep httpd
# Nginx + php-fpm の場合
ps aux | grep php-fpm

CentOS/RHEL系では apache、Ubuntu/Debian系では www-data が一般的です。
なお、所有者をPHP実行ユーザーに統一すると、Webプロセスがファイルを書き換えられるようになります。万一サイトが改ざんされた際に影響が広がりやすくなるトレードオフがあるため、運用に応じてWAFの導入や更新後の権限見直しを検討してください。


② パーミッションの整理

続けて、ディレクトリとファイルのアクセス権(パーミッション)を設定します。

sudo find /var/www/html/wp -type d -exec chmod 755 {} \;
sudo find /var/www/html/wp -type f -exec chmod 644 {} \;
sudo chmod 640 /var/www/html/wp/wp-config.php

これで、必要な権限を維持しつつWordPressがファイルを更新できるようになります。


③ wp-config.php に追記(必要に応じて)

一時的な対応としてFTPモードを強制解除する場合は、wp-config.php に以下を追記します。

define('FS_METHOD', 'direct');

ただし、権限の不一致が解消されていないと効果がない場合があります。根本的な解決方法は「ファイル所有者の修正」です。


🧪 テスト結果(VMware上での検証)

弊社のVMwareテスト環境で検証を行いました。ファイル所有者を apache:apache に統一したところ、WordPress本体の更新を管理画面から正常に実行できることを確認しました。

FTP情報の入力は不要となり、管理画面から直接アップデートを実行できます。


🔄 自動アップデート(マイナー更新)について

マイナーアップデート(セキュリティ更新)も同じ書き込み権限を使用します。そのため、wp-cron.php が正常に実行されていれば、自動更新も動作する見込みです。

※ サーバーのcron設定や、外部アクセスによるトリガーが有効であることを確認しておくと安心です。


📋 まとめ

項目内容
原因ファイルの所有者とPHP実行ユーザーが異なるため
解決方法所有者を apache:apache に変更し、パーミッションを整理
補足wp-config.php に FS_METHOD を追記してもOK(暫定対応)
検証結果VMwareテスト環境で正常動作を確認済み
注意点自動更新は wp-cron.php が有効であることが前提

お問い合わせ・お見積もりはお気軽に

内容に応じたお見積もりも無料で行います。