学び(インデックス)

WordPressでHTTPエラーが表示されて画像アップロードできない時の対処法

慌てるべからず!

  1. HTTPエラーページをデベロッパーツールで確認!
  2. エックスサーバーのエラーログをダウンロードして確認!
  3. 原因を突き止めたら解消させる!

トコトコ研究所は、エックスサーバーを利用してブログ運営しています。

今回、エックスサーバーの高速化機能である「Xアクセラレータ」を利用したかったのですが、当環境では、まず最新サーバーへ移行させる必要がありました。

ですから、まずは「新サーバー簡単移行」の機能を使い、移行手続きを踏み、その後、Xアクセラレータで高速化!という手順。

サーバー移行から高速化まではうまく行ったのですが、その後、当ブログに画像(メディア)アップロードしようとすると、「HTTPエラー。」が表示されてしまい、アップロードが不可に。

やはりまずは、直近の新サーバー移行が原因ではないかと疑うわけです。しかし、色々と検証してみると、スマホブラウザでのワードプレスを使った場合は、問題なく画像アップロードできたり…と、不明な点が続々と出ます。

Googleで検索をかけてみると、試してみたい項目に「プラグインを全停止して検証」や「ブラウザのキャッシュを削除して検証」が見つかりました。しかし、筆者の場合、これらを試しても全く状態は変化なし。

同じような状況を経験されている方のために、ログを残しておきます。

 

 

まず、最初に試して欲しいのは、もう一度ワードプレスのメディアアップロードの画面で「HTTPエラー。」を表示させます。

そして、エラーメッセージが表示されている状態で、デベロッパーツールを開く。すると、右上の方に赤いX印が出ていると思います。そちらをクリック。すると、なんかしらのメッセージが下部に表示されますね。これが原因その①です。

筆者の場合は、「500エラー」を示すメッセージが表示されました。500エラーはサーバー負荷に関するエラーですから、どうやらエックスサーバーが原因とみて間違いなさそうです。

こうして、原因の切り分けを行いつつ。

次は、エックスサーバーのエラーログを確認します。

エラーログは、エックスサーバーのサーバーパネルにログイン後、トップメニューの「アクセス解析」→「エラーログ」からダウンロードすることができます。Macの場合はこれをテキストエディットアプリで開きます。

開いたら、ログの下の方が最新メッセージです。

筆者の場合は、ここに『Maximum execution time of 30 seconds exceeded〜〜〜』というエラーログが残っていました。日時が一緒に記述してありますから、HTTPエラー。が出た時間と被っているはず。

ここでやっと原因を突き止めることができました。

このエラーの原因を解決すれば画像アップロードが再度可能になるはずです。

で、このエラーがなんなのか、というと、筆者も詳しくないので、もう一度Google検索をし直しました。どうやらphpの記述が原因のようで、画像アップロードまでの待機時間30秒に設定してあり、それを過ぎた時点で弾かれてしまう、と。

詳しくないので、解決方法だけサクッと説明すると、もう一度エックスサーバーのサーバーパネル内に行き、「php.ini設定」をクリック。サイトドメイン名が表示されているので対象サイトをクリック(全サイトが対象なはずですから、テストした後は全サイト同じ設定すればOK)

「php.ini設定変更」のタブをクリック

下の方へスクロールしていくと、「max_execution_time」という項目が見つかります。

この項目の設定数値が「30」になっているはず。これを「60」に変更します。(設定する(確認)ボタンを押すのをお忘れなく)

 

 

筆者の場合はこれで治りました!

取り急ぎのご報告ですので、画像などの添付がなくてすみません。。。

 

 

COMMENT

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