こんにちは、パンダリオン(@pandarion_com)です。
僕はWeb制作も行なっているんですが、基本的にはWordPressを利用しています。このブログもWordPressを利用して構築しています。
そんなWordPress愛好家なんですが、ブログを書いていて時々起きる問題が
画像がアップロードできない問題!
そう、WordPressユーザーなら一度は経験したことがあるであろう、メディアへ画像をアップロードしても「HTTPエラー」という文字が表示されて画像がアップロード出来ない状態。
今回はWordPressに画像がアップロード出来なくなる原因と、その対処法について簡単にご紹介します。
タブを閉じたり、リロードしたりしてみる
WordPressにメディアファイルがアップロード出来ない時の対処法として、一番簡単なのがこの方法。
単純にブラウザ側のエラーである可能性もあるため、執筆中の記事を下書き保存し、ブラウザを閉じてみましょう。
タブだけを閉じてみてもいいですし、ブラウザ自体をスーパーリロードすることで解決するケースもあります。
「あれ?」と思った時には、まずこの簡単な方法でキャッシュクリアしてみるのがおすすめです。
再アップロードする時にはファイル名を変更する
画面をリロードしたり、タブを新しく開いてファイルをアップロードする時には、先ほどエラーを起こしたファイルのファイル名を変更しておきましょう。
このこと自体に大きな理由はないのですが、一度エラーを起こしているファイルとして弾かれてしまわないようにファイル名の変更をおすすめします。
僕は、ほとんどの場合この方法で解決できています。
ファイル形式を変更してみる
それでもファイルがアップロード出来ない場合は、アップロードするファイルのファイル形式を変更してみるのもおすすめです。
画像ファイルの場合、jpg、png、gifなどのファイル形式がありますよね?今アップロードしたファイル形式を確認して、それ以外のファイル形式に変更してみましょう。
変更するにはパソコン側から操作してもいいですし、画像形式変更のブラウザツールなどを利用してもいいでしょう。
プラグインが悪影響を与えている
WordPressというCMSは、プラグインを導入するだけで簡単にカスタマイズできます。そのため、初心者ユーザーの中にはどんどんプラグインを入れて機能を増やしている方もいるでしょう。
プラグインは機能を増やすことができる便利なものですが、あまりたくさん入れるとサイトが重くなったり、プラグイン同士が反発してサイトに悪影響を与えてしまったりします。最悪の場合、サイトが表示されなくなることも…。
そんなプラグインの影響でメディアファイルがアップロード出来なくなっている可能性も考えられます。
直前にインストールしたプラグインを停止する
プラグインを入れてからメディアファイルのアップロードが出来なくなった場合、プラグインを停止することで解決する場合があります。
メディアファイルのアップロードエラーが表示されるようになった前に、何かプラグインは入れませんでしたか?
特に、画像ファイルの容量を自動的に下げてくれる(圧縮してくれる)ようなプラグインは要注意。このようなプラグインは便利ですが、メディアへのアップローダーに影響を及ぼしている可能性があります。
有名どころでいうと「EWWW Image Optimizer」というプラグイン。
このプラグインは自動的に画像容量を下げてサイトの読み込みスピードを上げてくれる便利なプラグインなのですが、このプラグインが原因でメディアファイルのアップロードへ悪影響を与える可能性もあります。
HTTPエラーなどが頻発する際には、まず「EWWW Image Optimizer」などの画像関連プラグインを停止してみましょう。
WordPressのバージョンが古い
プラグインだけではなく、WordPress本体のバージョンが古いことでアップロードエラーが生じている可能性があります。
最近ではWordPressバージョン5がリリースされていますね。しかし、バージョン5からは投稿機能がGutenberg(グーテンベルグ)へと変更されており、その使い勝手からバージョン4を使い続けているユーザーも多いはず。
しかし、基本的にWordPressはバージョンアップすることを前提として構成されているので、可能であればWordPressを最新版へアップロードしておきましょう。
バージョンアップはバックアップを取ってから
WordPressのバージョンアップはボタン一つで可能ですが、バージョンアップするとWordPressのコア部分が書き換えられてしまうため、思わぬエラーが発生する可能性もあります。
そこで、WordPressをバージョンアップする前には
- テーマファイル
- データベース
両方のバックアップをしっかりと取っておきましょう。
phpプログラム「php.ini」の修正
もう一つ、メディアアップロードのHTTPエラーを解消する方法が、php.iniファイルの修正。PHPプログラムの修正と聞くと
[st-kaiwa3]私には無理だ![/st-kaiwa3]なんて思ってしまうかもしれませんが、php.iniの調整はサーバー画面から出来るので簡単。この手順を見ながらすれば、誰でも出来ちゃいます。
「php.ini」というのはPHPファイルの全体的な動作や環境を設定するためのファイル。一般的には文字化けなどを修正するために触るファイルです。
今回は、僕の使用しているエックスサーバーを例に操作手順を説明します。
php.iniの設定変更手順
まずはエックスサーバーのサーバーパネルへログインします。そして、「php.ini設定」をクリック。
そして、変更したいドメイン名を選択。
すると、php.iniの設定画面へ遷移するので、上のタブの中から「php.ini設定変更」をクリック。
いろんな項目が表示されていますが、とりあえず下の方までズーッとスクロールして、「その他の設定」項目の中にある「max-execution-time」を見つけます。
この項目はデフォルトで30と入力されていると思いますが、この数字を60へ書き換えます。これでOK!
その他にも、様々な編集可能項目が用意されていますが、それぞれの意味を簡単に記載しておきます。
safe_mode | プログラムファイルの所有者が、プログラム内の関数によって処理されているファイル及びディレクトリの所有者と同一かの確認を行う設定をします。 |
max_execution_time | 無限ループなどにより永続的に実行されているスクリプトが、強制終了されるまでの時間を秒単位で指定します。 |
max_input_time | スクリプトが POST、GET、そしてファイルアップロードなどの入力をパースする最大の時間を秒単位で指定します。 |
memory_limit | プログラムが使用できる最大メモリ数を指定します。 |
post_max_size | POSTデータの許容最大サイズを設定します。 |
upload_max_filesize | アップロードファイルの許容サイズを設定します。 |
この辺りの設定を触れば、WordPressへアップロードする際の設定変更が可能。アップロードするファイルサイズが大きくてメディアアップロード出来ない時なども、ここの設定を見直すことで修正可能です。
また、エックスサーバーのphp.ini設定については、こちらの「php.ini設定で設定可能な項目について」ページで各項目が詳しく説明されているので、気になる方はぜひ。
WordPressにメディアがアップロード出来ない時(HTTPエラー)は焦らずに
WordPressでブログを書いている時にメディアがアップロード出来なくなると、めちゃくちゃイライラしますよね。ただでさえ時間がない中ブログ執筆をしているのに、それだけで時間がかかっちゃう。
でも、そんな時にも焦らずに一つずつ確認して問題をクリアしていけば大丈夫。意外に簡単な方法で解決できちゃうこともあります。
これで、皆さんのブログ執筆が捗りますように!