ロリポップ!でPHPの設定(php.ini)を編集してアップロード容量を変更する方法(.htaccess)

みなさんこんにちは!エンジニアの高澤です!

今回は、ロリポップ!でPHPの設定(php.ini)を編集してアップロード容量を変更する方法について解説していきたいと思います。

当記事ではWordPressを題材に解説いたしますが、レンタルサーバーのロリポップを利用してWordPressでご自身のサイトを立ち上げている方は多くいらっしゃるかと思います。

WordPressを使っていると、例えばサイズと解像度が大きくて容量が非常に大きい画像ファイルを記事ページにアップロードして表示させたり、資料ダウンロードのPDFファイルとしてWordPress上にアップロードして公開したいといった場合があるかと思います。

また、WordPressでは「All-in-One WP Migration and Backup」というプラグインを使ってサイトのデータをバックアップしたり、別ドメインで立ち上げたWordPressへ移行(引越し)する際などに、大容量サイズのサイト全体のバックアップファイルをダウンロードしたりアップロードしたりといった場面がよくあるかと思います。

今回は、このような日頃サイト運営を行う中でいずれも容量の大きいファイルを扱う際に「容量オーバーでサイトにアップロードできない」といった場面で役立つPHPの設定(php.ini)を編集してアップロード容量を変更する方法について解説したいと思います。

PHPの設定(php.ini)とは

php.iniとは、PHPの動作を制御するための設定ファイルのことを言います。

つまり、PHP自体の設定をおこないたい場合はサーバーにあるphp.iniというファイルを編集することになります。

PHPを使用する環境では、このphp.iniファイルを編集することで、メモリ制限やアップロード容量、エラーログの出力など、さまざまな設定を変更できます。

特に、WordPressなどのCMSを利用する場合、アップロードできるファイルサイズの制限を変更するためにphp.iniを編集することがあります。デフォルトでは、アップロード容量が比較的小さい(20MBなど)ため、大きなファイルをアップロードしようとするとエラーになることがよくあります。

この問題を解決するには、php.iniのupload_max_filesize やpost_max_sizeの値を変更する必要があります。

ロリポップ!のPHPの設定(php.ini)とは

ロリポップ!のレンタルサーバーでは、ユーザーが簡単にphp.iniの設定を変更できる機能が用意されているため、適切に設定を調整することで、快適なサイト運営が可能になります。

ただし、普通に管理画面からphp.iniの設定を編集する場合、下図のように値の部分がドロップダウン形式となっており、ロリポップ!側であらかじめ決められた値しか設定することができません。

そのため、今回解説しますが、通常通り管理画面からはphp.iniの設定の編集はせず、.htacessというApache(アパッチ)というWebサーバーで動作する設定ファイルを編集することになります。

ちなみに以下のURLのロリポップ公式ページでPHP設定について解説しているページがあるので、よろしければご活用ください。

PHP設定 - ロリポップ!レンタルサーバー
ロリポップ!レンタルサーバーのご利用マニュアル phpのバージョン・php.iniの設定方法を説明したマニュアルページです。

.htaccessとは

.htaccess(エイチティーアクセス)とは、Apache(アパッチ)というWebサーバーで動作する設定ファイルの一つを言います。

このファイルを使用すると、サーバーの設定をディレクトリ単位で制御でき、サイトの動作を柔軟にカスタマイズできます。

たとえば、以下のような設定が可能です。

  • リダイレクト設定:特定のURLにアクセスした際に別のページへ転送する
  • アクセス制限:特定のIPアドレスからのアクセスをブロックする
  • エラーページのカスタマイズ:404エラーページをオリジナルのデザインに変更する
  • キャッシュ設定:ブラウザキャッシュを利用して表示速度を向上させる
  • PHPの設定変更:php.ini の編集が難しい場合、.htaccessを使って一部のPHP設定を上書きすることも可能

ロリポップ!などのレンタルサーバーでは、php.iniを直接編集できないこともありますが、.htaccessを利用することでPHPの設定を変更できる場合があります。

そのため、サーバーの動作を調整する際には、可能であれば.htaccessの活用も検討するとよいでしょう。

ただし、この.htaccessの扱うには非常に注意が必要です。というのも、記述を一つでもミスすればエラーになってサイトが真っ白になったりして表示されなくなってしまうからです。

.htaccessを編集する際は、必ず事前にバックアップをとっておき、いつでも戻せるようにしておくことが重要です。

前提とするロリポップ!のプラン

今回前提とするロリポップ!のプランは「ライト」プランとなりますが、他プランでも使えるノウハウになるかと思いますのでぜひご確認ください。

「ハイスピードプラン」だと今回紹介するノウハウより簡単になるようですので、プランが上になれば若干設定が簡単になるかと思います。

PHPの設定(php.ini)を編集する方法

それでは早速、php.iniを編集する方法について解説したいと思います。

ここから解説する手順通りに進めていただくことで、無理なく設定を編集することができますのでご安心ください。

まずはロリポップ!の管理画面を開いてください。開いたら、左サイドバーのメニューにある「PHP設定」をクリックしてください。

PHP設定を開いていただくと、下図のようにご自身が契約して取得されているドメインが一覧で並んでいることと思います。

下図を見ていただくとドメインの右側に、PHPのバージョンのドロップダウンメニュー(8.3(CGI版)等)とphp.iniの設定ボタンである「設定」があるかと思います。

PHPの設定を変更したいご自身のサイトのドメインの右側にあるPHPのバージョンを確認してください。ドロップダウンを選択していただくと利用できるPHPのバージョンがわかるかと思います。

今回作業を行う上で「CGI版」とつくバージョンが必要になるので、「CGI版」とついていなかったら必ず「〇〇(CGI版)」となるPHPバージョンを選択するようにしてください。

特に理由がなければ、「8.3(CGI版)」で良いかと思います。

PHPのバージョンが設定できたら、次はその横にある「設定」ボタンをクリックしてください。

すると、下図のようにphp.iniの設定というページが表示されるかと思います。

今回作業を行う上で「CGI版」のPHPバージョンと合わせて、「php_value, php_flagを利用可能にする」を「ON」にする必要があります。画面を下にスクロールしてください。

下にスクロールすると、「◾️そのほか」の設定項目の一番下に「php_value, php_flagを利用可能にする」があるので、設定を「On」にします。

次に、FTPから.htaccessへphp.iniに本来記述するファイルアップロード容量の許容度を上げるコードを追加します。

ロリポップ!の管理画面左サイドバーにある「ロリポップ!FTP」をクリックしてください。

すると、FTP操作ができるロリポップ!レンタルサーバーFTPと言うページが表示されます。

FTP操作できるこのページによって、サーバーの中へアクセスし、ファイルを作成・更新・削除・コピーなどさまざまな操作をすることが可能です。

ページを開いたら、トップ階層にご自身で契約された各サイトのドメインに対応したサイトのディレクトリがいくつも設置されていることと思いますので、今回PHP設定を変更してファイルアップロード容量の許容量をカスタマイズしたいサイトのディレクトリへクリックして進みます。

クリックしていただくと、WordPress本体のトップディレクトリに移動するので、その階層に「.htaccess」があるので、「.htaccess」をクリックしてファイルを開いてください。

すると、下図のように.htaccessを編集するエディタのあるページが開かれます。

こちらのエディタにある内容.htaccessの中身になります。内容的にはWordPressがサイトとして動くために必須のコードが記述されております。

こちらのエディタへ、ファイルアップロード容量を上げるためのコードを追加していきます。

以下のコードをコピーしてください。

php_value memory_limit 1G
php_value upload_max_filesize 1G
php_value post_max_size 1G

コードについて説明します。

上記の「.htaccess」のコードは、PHPの設定を変更して、サーバー上で処理できるメモリ使用量やファイルのアップロード制限を調整するものです。

まず、「php_value memory_limit 1G」は、PHPスクリプトが使用できるメモリの上限を1GBに設定するための記述です。これにより、大容量のデータを扱うスクリプトやメモリ消費の多い処理が安定して動作するようになります。

次に、「php_value upload_max_filesize 1G」は、アップロード可能な単一ファイルの最大サイズを1GBに制限する設定です。これを変更することで、WordPressのメディアアップロードなどで大きなファイルを扱えるようになります。

そして、「php_value post_max_size 1G」は、POSTリクエストで送信できるデータの最大サイズを1GBに設定するためのものです。これはファイルアップロード時の制限にも関係し、「upload_max_filesize」よりも大きい値に設定することが一般的です。

これらの設定を適用することで、大容量のファイルをアップロードする際のエラーを防ぎ、サーバーのパフォーマンスを向上させることができます。

もっと容量を上げたい場合は、「1G」の数値を変更して、必要に応じて「2G」や「3G」などとしていただければと思います。

コピーできたら、下図のようにエディタの上の部分にコピーしたコードをペーストしてください。

ペーストが完了したら「保存する」ボタンをクリックしてください。

これでロリポップ!でPHPの設定(php.ini)を編集してアップロード容量を変更する方法は完了です。お疲れ様でした!

これで容量の大きい画像やファイルをWordPressへアップロードすると、問題なく処理されるのではないかと思います。

筆者がよくあるパターンとして、All-in-One WP Migration and Backupプラグインでのバックアップ(エクスポート)したファイルをインポートする際に、容量オーバーしてエラーになる問題が多々ありますので、このような問題がまず解決されたことになります。

以下がAll-in-One WP Migration and Backupプラグインになります。

具体的には、下図のようにAll-in-One WP Migration and Backupプラグインのインポート画面にて、バックアップファイルをインポートすることになるかと思いますが、サーバーのPHP設定によって、デフォルトでは「20MB」となっているのが確認できるかと思います。

こちらの数値はご自身で利用されているレンタルサーバーなどによって違ってきます。

このインポート画面にてバックアップファイルをインポートしようとすると、インポート処理が途中で終わってしまい、エラーになってしまいます。

これは「20MB」という許容容量が小さいために起こる現象です。

当記事の内容を完了させる前は、このような問題に悩まされました。

ですが、当記事の作業を完了していただくと、下図のように「20MB」とあった表記が「1GB」となっているのが確認できるかと思います。

そして、1GBに近い容量の大きめのファイルも、下図のように問題なくインポートすることができるようになります。

All-in-One WP Migration and Backupプラグインで解決された具体例を出しましたが、他にもWordPressでよく行われる割と容量が重めのMP4形式などの動画ファイルや、高解像度の画像などをエディタにアップロードするときなども、問題なくできるようになっていることと思います。

まとめ

今回は、ロリポップ!のレンタルサーバーでPHPの設定(php.ini)を編集し、アップロード容量を変更する方法について解説しました。

WordPressを運営していると、高解像度の画像やPDF資料、大容量のバックアップファイルなどを扱う機会が多くなります。特に「All-in-One WP Migration and Backup」のようなプラグインを利用する際には、アップロード制限を超えてしまうケースも少なくありません。

そうした際に、php.ini の設定を適切に変更することで、スムーズにファイルをアップロードできるようになります。サイト運営を快適に進めるためにも、必要に応じて設定を見直し、最適な環境を整えましょう。

コメント

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