★★★ たった "1日" でできるWordPressブログの作り方講座 ★★★ はじめてみる
この記事には「PR」「宣伝」が含まれます

WordPressのアップロード上限を増やす3つの方法

WordPressのアップロード上限を増やす3つの方法

あれれ~?画像のアップロードに失敗しちゃった・・・どうしてだろう?
クロ子君、WordPressにはアップロード上限があってそれを超えたファイルはアップロードできないんだ
えぇ?じゃあそれより大きいサイズのファイルはアップロードできないってことですか~?
いやアップロードの上限はサーバー側で変更できるから心配しなくても大丈夫だ。その方法を教えよう

WordPressで1MBを超えるサイズが大きい画像や音声・動画ファイルをアップロードすると失敗したことはありません?

それはWordPressではアップロードできるファイルサイズに上限があるからです。

上限のせいで失敗するというならその上限を増やせばいいだけですが、その設定はWordPress側ではなくそれをインストールしているレンタルサーバーで変更する必要があります。

設定方法もそれほど難しくないので、ここではそのアップロード上限を変更する3つの方法について紹介します。

アップロード上限を定めているもの

普段サイズの小さい画像しかアップロードしないならアップロード上限について気にすることはあまりないと思います。

しかしメディアライブラリで画像をアップロードするとき、よく見ると次の画像のように「最大アップロードサイズ」で上限が表示されているはずです。

上の画像の例(さくらレンタルサーバーを使用)では最大アップロードサイズが2MB(メガバイト)なので2MBを超えるファイルはアップロードできないということになります。

画像だったら2MB超えるということは中々ないですけど音声や動画ファイルなら圧縮していても数十MB~数百MBになることもあるので厳しい制限ですよね。

ではこの上限はどこで定められているかというとWordPress側ではなく、サーバー側のPHP設定で定められています

WordPressはPHPというプログラミング言語で作られていて、そのPHPプログラムの全体的な動作や環境を設定するためのファイルが「php.ini」です。そのファイルで設定できる項目にアップロード上限が含まれています。

php.iniのアップロード上限設定について

php.iniでアップロード上限を定めているのは「upload_max_filesize」という1ファイル当たりの最大アップロードサイズを定める設定項目です。

この項目を例えば次のように変更すれば上限を増やせます。

upload_max_filesize = 20M

サイズは単位付きで指定します。20Mの「M」はメガバイトを表していて、単位を「G」にすることで上限をギガバイトにすることも可能です。

ただしphp.iniであまりにも大きなサイズ、例えば次のように

upload_max_filesize = 10G

としてもアップロード上限は10GBにはなりません。

なぜならWebサーバーソフトとして使われるapacheの設定に「LimitRequestBody」という項目があってその上限( = 2GB)を超えたアップロードはできないようになっているからです。

つまりどんなに上限を大きくしたとしてもアップロードできる最大サイズは2GBで頭打ちということです。

またサーバーのメモリにも上限は依存しているのでもしメモリが1GBしかないサーバーなら上限は2GBどころか1GBになってしまいます

php.iniで設定した上限が必ず設定されるわけではないことに注意が必要ですね。

アップロード上限を増やす方法

ではアップロード上限の変更のやり方が分かったところで具体的にその設定を変更する方法について紹介していきます。

上限を増やす方法は次の3つです。

  • サーバーの管理画面から変更
  • php.iniを直接編集
  • .htaccessを直接編集

この3つについて順にやり方を説明します。

サーバー管理画面から変更

まず今使っているレンタルサーバーで「php.ini」が変更できる設定項目がないか確認してみましょう。

例えばさくらインターネットのレンタルサーバーの場合、コントロールパネルにログインすると左のメニューに「PHP設定の編集」という項目があります。

この項目を開くと次のようにphp.iniをコントロールパネル上から設定する画面が表示されます。

この画面のテキストエリアに先ほど説明した「upload_max_filesize」の設定を追加して「保存する」ボタンを押せば変更が反映されます。

もしサーバー側でこのような設定項目が用意されているならそちらを使った方が楽です。

php.iniを直接編集する方法

もしレンタルサーバー側に設定項目が見つからなかったなら自分でphp.iniを開いて設定項目を追加する必要があります。

php.iniはサーバーによって設置されている場所が違います。

なのでどこにあるかは各レンタルサーバーのQ&Aで「php.ini」で検索するか直接サポートに問い合わせしてみるのが良いと思います。

そしてphp.iniの場所が分かったらFTPソフトなどでファイルを開いて

upload_max_filesize = 20M

を追加して保存してアップロードしなおせば変更が反映されるはずです。

.htaccessを直接編集する方法

ーーサーバーのQ&Aを見てもサポートに聞いてもphp.iniの場所が分からない・・・

そういう場合はphp.iniの変更が許可されていない可能性があります。

それならphp.iniを編集する代わりに「.htaccess」というファイルで上限を設定しましょう。

その手順ですが、まずFTPソフトやサーバーのファイルマネージャーなどでルートフォルダ(一番上のフォルダ)にある「.htaccess」という名前のファイルを探してください

ファイルが見つかったらエディタで開いて次の内容を最後に追加します。

#1ファイル当たりの最大アップロードサイズ
php_value upload_max_filesize 20M

内容を追加して保存してアップロードすればphp.iniで最大アップロードサイズを指定したのと同じ効果が得られます。

もしどうしてもphp.iniが見つからないという場合はこの方法を試してみてください。

もし全ての方法で上手くいかなかったら...

今まで紹介した次の3つの方法

  • サーバーの管理画面から変更
  • php.iniを直接編集
  • .htaccessを直接編集

これらが全て上手くいかない場合は手の打ちようがありません

レンタルサーバー側でできないと決まっていることはどうやっても変えることはできないので、サーバー移行なども考えた方がいいかもしれません。

特に無料レンタルサーバーは制限がかなり多いのでそれで苦労するくらいなら最初から有料のサーバーを契約した方が初期費用は掛かっても後々楽です

どのサーバーが良いか分からないという場合は次のような2つのサービスが機能もサポートも充実していて信頼できるのでおススメです。

他にもレンタルサーバはありますが、コスパが良くて困った時に情報が得られやすいのがこの2つです。

さくらもwpXも両方お試し期間があるので今まで無料サーバーを使っていたなら試してみてください。無料と違って制限も全くないですし、性能も段違いです。

詳しくは次の記事でそれぞれのサーバーの特徴やメリットなどを紹介してあります。

厳選!WordPressを高速で動かすのに最適なレンタルサーバー3選
WordPressは多機能な分だけ表示速度が遅くなりがちで、高速に動かすにはサーバー選びが超重要です。そこでここではWordPress運営に特におススメの高速・高機能なレンタルサーバーを厳選して3つ紹介します。

特にWordPressで高速動作させたい場合はwpxレンタルサーバーの方がかなり高スペックなので本格的にブログ・サイト運営するのに向いているでしょう。

私は少なくとも無料レンタルサーバーを使うのだけは絶対やめるべき、だと思っています。

「無料レンタルサーバー」と聞くとなんでもただで使えると思う人もいるでしょう。ですが無料の代わりにPHPの設定すら変えられないレンタルサーバーもあるので安易にタダだからと飛びつかない方が賢明です。

まとめ

普通に文字と画像だけのブログを運営しているならアップロード上限に困るということはほとんどないです。

しかしメディアが中心のサイト(動画サイトなど)ではアップロード上限が2MBだととても足りないのでphp.iniの設定を変更する必要があるかもしれません。

ただしサーバーの設定やメモリの上限によっては必ずphp.iniで設定した上限になるとは限らないのでそこは注意が必要な所です。

以上ここではWordPressのアップロード上限を変更する方法についていくつか紹介しました。

The following two tabs change content below.

フク郎

昔はプログラミングに熱中していたが、ブログとWordPressに興味を持ち始め今はサイト・ブログ作りが生きがい。自分の「好き」をブログに変えたい、情報発信したい人に役立つWordPress術・サイト構築術を発信中。一日一歩楽しんでブログ構築できるように読みやすい&楽しい記事作りを心がけています。メールアドレス : fukuropress@gmail.com