原因はファイル数制限?ワードプレスの更新・画像アップロードエラーの解決法

長年WordPress(ワードプレス)でブログを運営していますが、先日突然「WordPressとテーマを最新バージョンに更新できない」「記事作成に必要な画像がアップロードできない」という深刻なトラブルに見舞われました。

長くブログを運営していても今回のような問題は初めてでかなり焦りました…。

ブログ更新のために必要な画像アップロードができず、セキュリティ面でも重要なWordPressやテーマの更新もできないという状況は非常に困りました。

色々と調査と対応をした結果、原因と解決方法がわかったので共有します。同じ問題で困っている方の参考になれば幸いです。

起きていた問題

  • 「アップロードしたファイルをwp-content/uploads/2025/05に移動できませんでした」と表示されて画像が入れられない
  • 「WordPressの自動更新に失敗しました。再度、更新を行ってみてください」と表示される
  • 手動で更新しようとすると「要求されたアクションを実行するには、WordPressがWeb サーバーにアクセスする必要があります。次に進むにはFTPの認証情報を入力してください」と表示される

何度やっても同じエラーが出て困り果てました。

原因はサーバーのファイル・フォルダ数上限

結論から言うと、この問題はサーバーのファイル・フォルダ数の上限に達していることが原因でした。

私はロリポップ!レンタルサーバーを使用していますが、調査の結果、ファイル・フォルダ数の上限が50万個と決まっていることがわかりました。

私の場合、すでに499,998/500,000とほぼ上限に達していたのです。

wordpressで画像がアップロードができない原因はファイル・フォルダ数の上限だった

ロリポップのディスク使用量表示:ファイル・フォルダ数が499,998/500,000に達している

ディスク容量自体はまだ450GB以上も余裕があったのにファイル数の制限に引っかかるとファイルの書き込みができなくなり、画像アップロードやWordPress更新に失敗するという事態に陥っていました。

解決策:ファイル・フォルダ数を減らす

原因がファイル数の上限だったので、当然ながら解決策はサーバー上のファイル・フォルダ数を減らすことでした。

  • キャッシュファイルの削除(WP Fastest Cacheなどのプラグイン設定から実行)
  • 使用していないテーマやプラグインの削除
  • wp-content/cacheディレクトリ内のファイルを削除
  • 未使用の画像ファイルを整理

特にキャッシュプラグインを使用している場合は大量のキャッシュファイルが生成されている可能性があります。

プラグインの管理画面から「すべてのキャッシュを削除」を実行したところ、かなりの数のファイル・フォルダが減り、WordPressの更新や画像のアップロードができるようになりました。

主なサーバーのファイル数制限と確認方法

ロリポップの場合

ロリポップでは「サーバーの管理・設定」→「ディスク使用量」から現在のファイル・フォルダ数を確認できます。

プランによってファイル数の上限は異なりますが、多くのプランでは50万個が上限です。

その他のレンタルサーバーのファイル数制限

エックスサーバーやさくらインターネットなど、多くのレンタルサーバーではファイル数の明示的な表示機能がないため、問題が発生してから気づくケースが多いようです。

大量のファイルを生成するようなプラグイン(特にキャッシュ系)を使用している場合は注意が必要です。

試してみたけど効果がなかった対策

原因を特定する前に以下のような対策もいろいろ試してみましたが、いずれも効果がありませんでした。

1. wp-config.phpの設定変更

最初にwp-config.phpファイルに以下の設定を追加しました。

// ファイルシステムのアクセス方法を直接指定
define('FS_METHOD', 'direct');

このコードを<?phpの直後に追加することで、WordPressがFTP認証を求めずに直接ファイルシステムにアクセスできるようになります。

しかし、これだけでは問題は解決しませんでした。

2. .htaccessファイルの編集

次に.htaccessファイルの末尾に以下のコードを追加しました。

# BEGIN WordPress Upload Fix
php_value upload_max_filesize 64M
php_value post_max_size 64M
php_value memory_limit 128M
php_value max_execution_time 300
php_value max_input_time 300
# END WordPress Upload Fix

この設定を適用するためにはロリポップの管理画面から「PHP設定」→「php_value, php_flagを利用可能にする」を「On」にする必要があります。

しかし、この対策も効果がありませんでした。

3. パーミッション(権限)の変更

ファイルやフォルダの権限設定を変更することも試みました。

FTPソフトを使ってwp-content/uploadsフォルダなどのパーミッションを755から757に変更してみましたがこれも効果がありませんでした。

パーミッションの変更はサーバー環境によっては有効な場合もありますが、今回のケースではファイル数の制限が根本的な原因だったため解決には至りませんでした。

最終的には前述のようにファイル数を削減することで問題が解決しました。

長期的な対策

今回のようなトラブルが再発しないように以下のような長期的な対策を取ることをおすすめします。

  • 定期的なキャッシュクリア:週に1回程度、キャッシュの削除を習慣にする
  • 未使用のWordPressサイトを削除したり別アカウントに移行:1つのアカウントに複数のサイトがある場合は分散させる
  • 画像の事前最適化:アップロード前に画像サイズを縮小することでWordPressでの自動生成ファイル数を減らす
  • PHP設定の最適化:FS_METHODの設定はそのままにしておく(将来的な問題防止に役立つ)

解決に役立った情報

この問題の解決に決定的だったのが、「WordPressの使いどころ」さんの「アップロードしたファイルをwp-content/uploads…に移動できませんでした」という記事です。

私の状況と完全に一致していて、ロリポップサーバーでは50万ファイルという制限があることを初めて知りました。

また、「IT便利帳」さんの「WordPressで画像ファイルがアップロードエラーする場合の2つの解決法」という記事もヒントになりました。この記事ではキャッシュプラグインのキャッシュ削除が効果的だと紹介されていました。

これらの情報により、問題の本質がファイル・フォルダ数の上限だと理解でき、キャッシュ削除という具体的な対策で解決することができました。

まとめ

長年WordPressを運用していると、突然このようなトラブルに遭遇することがあります。

画像がアップロードできなくなったりWordPressやテーマを最新バージョンに更新できなくなったりした場合はファイル・フォルダ数制限を疑ってみてください。特にキャッシュプラグインを使用している場合はキャッシュの削除だけで解決することも多いです。

今回の経験から定期的なメンテナンスの重要性を改めて実感しました。不要ファイルの定期的な削除習慣を身につけるとこのような問題を未然に防げるかもしれません。

この記事が私と同じトラブルで頭を抱えている方の助けになれば幸いです!

その他
ガガ
Author Profile

猫飼い歴30年以上の猫好き、生き物好きで、スポーツや読書、料理、調べものが趣味。
野球とサッカーは観戦するのもプレーするのも好きです。
料理は作るのも食べるのも好きですが甲殻類アレルギー持ちです。

ガガをフォローする
タイトルとURLをコピーしました