レンタルサーバーやSSL関係のお役立ちコラム

さくらのホームページ教室

さくらのレンタルサーバのPHPの環境を確認、整えてみよう

さくらのレンタルサーバではたくさんのプログラミング言語を利用する事ができますがおそらく、今一番使われているのはPHPになるでしょう。 WordPressやEC-CUBEなどもPHPで作られたウェブアプリケーションですが、プラグインやテーマによっては動いたり、エラーになったりする場合があります。 また、PHPのプログラムを書いていただいても、対応するPHPの環境が設定されていないと「500 Internal Server Error」となったりします。 そこで、今回は現在ご利用のPHPの状態がどのようなものか、また必要な設定を有効にするにはどうすれば良いか、見ていきたいと思います。

PHPのバージョン変更

さくらのレンタルサーバでは、複数のPHPのバージョンが利用できます(PHPバージョンはアカウント毎で固定)。PHPのバージョン変更方法はマニュアルに譲ります。

PHPのバージョン変更

PHPのバージョン変更は即時反映となりますので、もし、既存のPHPのプログラムが動かなくなった場合は、再度以前のバージョンに戻すことで切り戻しができます。

php.ini の設定について

php.iniはPHPの設定を行うファイルです。さくらのレンタルサーバではphp.iniの内容を任意に変更することができます。

※一部管理者権限が必要な項目は設定できないものもあります。

サーバコントロールパネルログイン

サーバコントロールパネル」にログインします。

ドメイン名初期ドメイン または 追加されたドメイン
パスワードサーバパスワード
仮登録完了のお知らせに記載のパスワード。
紛失・ご不明の場合は「サーバパスワードの再発行」をご確認ください。

PHP.iniファイル設定

スクリプト設定から『PHP.iniファイル設定』をクリックします。

php.iniに設定したい値を入力し『保存する』をクリックします。

注意:php.iniを設置すると、その他のPHPの設定はデフォルトに戻ります。
PHPの設定のデフォルト値について、詳細は PHPのマニュアルをご参照ください。

設定例

PHP.iniの設定方法について記述例を記載します。
PHP.iniの設定は多岐に渡りますので、その他の設定につきましてはPHPのマニュアルをご参照ください。

memory_limit を〇MBまで拡張させる場合

memory_limit = 〇M

PHPでPOSTできる容量を拡張させる場合

post_max_size = 〇M

PHPでアップロード可能なファイル容量の上限を〇MBに設定する場合

upload_max_filesize = 〇M

PHPの時刻を日本時間に設定する場合

date.timezone = “Asia/Tokyo”

imagick.so を有効にする場合

extension = imagick.so

さて、PHPのバージョン変更で変わった環境はないか。
確認したい場合は、phpinfo を設置してみましょう。

phpinfoについて

PHPの現在の設定状態を確認したい場合は、以下の記述で任意のPHPファイルを作成し、~/www 以下に設置します。

<?php
phpinfo();
?>

簡単な内容なので、さくらのレンタルサーバであればファイルマネージャーでも作成する事ができます。

ファイルマネージャーについて

設置したファイルにブラウザでアクセスすると、下記のような画面が表示され、PHPの設定状態を確認できます。

動作保証外の内容について

非推奨の設定について

さくらのレンタルサーバではhtmlファイル内でPHPを動作させる事はできません。
そこで、「php.cgiを独自に設置し、.htaccessで連携させる事で実現させる」という内容のブログ記事がたくさん出ていますが、これをやってしまうと以下のデメリットがあります。

・さくらインターネットとして動作保証外になるので、サポートを受けられない。
・メンテナンス時に不具合の原因となる。

技術系ブログでは、一般的に動作させるところまでは確認しているようですが、その後の運用までは考慮されていないものも多いので注意された方が良いと思います。

一般に、バージョン変更を除く、PHPの設定変更は上級者向けの設定となります。
設定変更時にはその設定の意味と、メリット、デメリットを把握した上で行うようにすると、安定したサーバの運用ができると思います。

Promotion

執筆

さくらインターネットでカスタマーサポートを担当。 さくらのレンタルサーバのお客様へ、サーバ運用の一助となるような記事を書いていきたいと思います。