【WordPress】容量オーバー?大きな動画ファイルをアップロードする方法を解説します!

Wordpress

当ブログは、レンタルサーバーのConoha WINGを使って、WordPress上で書いています。


先日、新たなブログ記事に動画をアップロードしようとしたところ……

このファイルはサイトの最大アップロードサイズを超えています」とのメッセージが!

動画ファイルをアップして見てもらいたいのに……

ということで、今回はこの問題の原因と解決策を説明していきます!

結論としては、サーバー上のphp.iniファイルを修正することで解決することができました!

このエラーの原因は?

エラーは「このファイルはサイトの最大アップロードサイズを超えています」という内容でした。

なので、WordPressのメディアからメディアファイルを追加を見てみると……

最大アップロードサイズ:32MB……32MB……32MB

フルHDサイズの動画ファイルをアップロードしようとしたらエラーになるはずだ……

これが原因でエラーになっていたのが分かったので、このサイズを変更すれば解決することが分かりました。

解決策は?

調べていくと、ファイルのアップロードやスクリプトの処理能力に関わる設定は、サーバー上(PHP)のphp.iniファイルで設定される、3つの項目「memory_limitpost_max_sizeupload_max_filesize」で変更できるようです。

それなので、これらの項目を設定変更して解決できるか検証していきます。

php.iniで設定する項目は?

今回設定する項目の説明は以下!

項目名説明役割特記事項
memory_limitPHPスクリプト1つが実行中に確保できるメモリの最大容量無限ループや巨大なデータを扱うプログラムが、サーバーのメモリをすべて食いつぶしてサーバーダウンを引き起こすのを防ぐための安全装置です。一般的なWebサイトでは128Mや256Mがデフォルトですが、画像処理(リサイズ等)を行う場合はより大きくする必要があります。
post_max_sizePOSTメソッドで送信されるデータ全体の最大サイズフォームから送信されるすべてのデータ(テキストボックスの内容 + アップロードファイルなど)の合計サイズの上限を決めます。ファイルアップロードを行う場合、ファイルそのもののサイズだけでなく、一緒に送信される他のデータも含めた総量であることに注意が必要です。
upload_max_filesizeアップロードされるファイル「単体」の最大サイズ1つのファイルとしてアップロードできるサイズの上限です。

これら3つの設定値には、正常にアップロード処理を行うために守らなければならない大小関係があり、基本的には以下の順番で大きく設定する必要があります。

memory_limit > post_max_size > upload_max_filesize

なぜこの順番なのか?の理由は以下です。
1.upload_max_filesize: まず、個々のファイル制限をクリアする必要があります。
2.post_max_size: 次に、ファイルを含めたPOSTデータ全体(封筒全体)が通る必要があり、ファイル単体制限より大きくないと矛盾が生じます。
3.memory_limit: 最後に、受け取ったデータを処理するためにスクリプトが動きます。場合によってはアップロードデータをメモリ上に展開する必要があるため、一番大きく設定するのが安全です。

Conoha WINGのコントロールパネルで設定変更!

解決策が分かったところで、php.iniの設定変更はConoha WINGのコントロールパネルにログインして行います。

設定は「サイト管理 → サイト設定 → 応用設定 → PHP設定 → php.ini編集」で行います。

php.ini編集には何も記載されていませんでした。

今回は以下の通り、3つの項目をテキストで書き込んで保存します(念の為、アップロードサイズは最初、50MBで設定してみました)

設定変更すると、成功のメッセージが!

※最初、upload_max_filesizeだけ記述すればOKだと思っていましたが、設定反映されなかったので3つすべて記載しました。

もしお試しされる方は以下のテキストファイルをご利用ください(容量(MB)は利用状況に合わせて修正してください)

テキスト貼り付け用

memory_limit = 256M
post_max_size = 100M
upload_max_filesize = 50M

その結果は!?

改めてWordPressのメディアからメディアファイルを追加を見てみると……

設定が反映されて50MBになりました!

50MB以下のファイルをアップロードしてみると、もちろんアップロードOKでした!

まとめ(設定変更はサーバー毎に手順が違うので要確認!)

今回は、WordPressでブログ記事を書いている時に起こった、「最大アップロードサイズを超えています」というエラーについての原因と解決策をまとめてみました!

私が契約しているレンタルサーバーのConoha WINGを使っての手順でしたが、php.iniを設定変更するという意味では他のサーバーでも応用できると思います。

WordPressで同じようなエラーが出ていて困っている方に参考になれば幸いです!

ロータス
ロータス

Twitter/Instagramに加えて最近noteも始めましたのでぜひ登録をお願いします!

ではまた!!

コメント

タイトルとURLをコピーしました