サーバーのセットアップは大変な作業ですが、これがPHPのようなプログラミング言語のインストールになるとなおさらです。しかし、WordPressのテストサーバをセットアップしテストを実行するには、PHPのインストールが必須のスキルになります。
では、サーバーにPHPをインストールするには、何から始めれば良いのでしょうか?様々なセットアップ環境に応じて、必要な方法は異なります。どこからPHPをダウンロードするのか、どのバージョンを選ぶのか、稼働するには何が必要か、そして様々なOSにどのようにPHPをインストールするのか等々。
この記事では、PHPのインストールを詳細に解説し、すべての疑問にお答えします。
では、早速始めましょう!
PHPのインストールについて動画でも解説しています。
PHPとは何か?
PHPは、主にウェブ開発やサーバーサイド(バックエンド)スクリプトに使用される、オープンソースのスクリプト言語です。簡単に紹介すると、
- PHPはサーバーにインストールして、スクリプトを実行できます(例えば、サイトにフォームを追加するコードなど)。
- クライアント側ではなくサーバー側で実行されます。つまり、ブラウザではなくバックエンドで動作します。
- HTMLと統合されており、ウェブ開発に非常に適しています。
また、ウェブスクリプト言語の中でも習得が容易な言語の一つで、初心者にも人気があります。一方で非常に強力であり、高度なウェブサイト機能にも適しています。
多くのウェブサイトやツールがPHPと多くのPHP拡張を使用しています(.NET、Apache、MySQLには聞き馴染みがあるでしょう)。WordPressは主にPHPで構築されており、プラグインやテーマもほとんどがPHPで動作します。
サーバーにPHPは必要ですか?
PHPが何かは分かりましたが、では、なぜ、サーバーにインストールする必要があるのでしょうか?
最も分かりやすい理由は、WordPressのインストールや稼働に必須の要件だからです。WordPressはほぼ、PHPのみで構築されています。また、WordPressのほとんどの関数、フック、テーマ、プラグインはPHPで動作します。
その他のWordPressのシステム要件もご確認ください。
そのため、WordPressのテストサーバーを自由に稼働してテストしたり、ステージングサイトをセットアップする場合は、PHPのインストールが必要です。
加えて、PHPは初心者の開発者にとって素晴らしい出発点です。他のウェブスクリプト言語と比較して使い方は簡単ですが、何か機能が犠牲になっているわけではありません。十分なスキルがあれば、あらゆる種類のプログラミングが可能です。
また、PHPは非常に人気があります。そのため、オンラインで多数のPHP拡張やリソースを見つけられます。
さらに、WordPressのテーマやプラグインのコーディングを習得したければ、PHPを学ぶ必要があります。テストサーバーのセットアップは、実験として最適な方法です。
注意:Kinstaなど、多くのウェブホスティングサーバーには、PHPとWordPressがプリインストールされています。さらにKinstaには、WordPressのステージングサイトを作成する機能も含まれていて、簡単にセットアップできます。
ローカルコンピュータまたは非マネージドホスティング環境で、ゼロからサーバーをセットアップする場合には、手動で行う必要があります。
以下では、サーバーのセットアップ手順を説明します。
PHPの要件
PHPをインストールする前に、サーバーがPHPを処理できることを確認する必要があります。幸いなことに、PHPの要件はかなり基本的なもので、多くのソフトウェアはすでにコンピュータにインストールされているはずです。
過去にサーバーを作成したことがない場合は、記事「各種OS上でローカルサーバーをセットアップする」を確認してください。正確な仕様はOSによって異なりますが、コマンドラインの操作方法や新しいソフトウェアのインストール方法は知っておく必要があります。
どのOSにPHPをインストールするにしても、PHPの動作にはウェブサーバーが必要です。また、恐らくMySQLのようなデータベースのインストールも必要になる点にも注意してください。
以下は、OSごとのPHPの前提条件です。まずはLinuxから。
- ANSI Cコンパイラ
- GDグラフィックスライブラリやPDFライブラリなど、モジュール固有のコンポーネント
- オプション:Autoconf 2.59+(PHPバージョン < 7.0)、Autoconf 2.64+(PHPバージョン > 7.2)、Automake 1.4+、Libtool 1.4+、re2c 0.13.4+、Bison
また、Unix系OSの操作にも慣れておく必要があります。
次に、WindowsでのPHPの要件です。
- PHP 5.5+では複数のWindows OSがサポートされていますが、2.0+ではWindows 2008およびWindows Vistaを使用できません。
- Visual C Runtime(CRT)
- PHPのバージョンに応じて、Visual Studio 2012、2015、2017、Microsoft Visual C++ Redistributable for Visual Studio 2019
最後に、macOSですが、PHPがバンドルされているため、前提条件はありません。この記事の後半で、有効化する方法を説明します。
どこからPHPをダウンロードするか
PHPファイルを手動でダウンロードする必要がある場合は、公式サイトのPHPダウンロードページから取得してください。
安全性が確認できない限りは、サードパーティサイトからのインストールは避けてください。サードパーティサイトからファイルをダウンロードすると、マルウェアをインストールする可能性があります。
Windowsマシン用にダウンロードする場合、PHPの各バージョンにある「Windows downloads」リンクを探し、適切なファイルをインストールしていることを確認してください。
古いバージョンのPHPもインストールできますが、自分が何をしているのか分かっている場合以外は、お勧めしません。サーバーをバグや重大なセキュリティ上の欠陥にさらすことになります。
Linuxディストリビューションを使用している場合、通常は、ウェブサイトからファイルを取得する必要はなく、コマンドラインを使用して取得します。以下で詳細な手順を説明します。
どのPHPバージョンを使用すべきか?
上のダウンロードリンクをクリックしても多くのファイルが表示され、恐らく圧倒されてしまうでしょう。どのPHPのバージョンが正しいバージョンでしょうか?
一般に、過去からの互換性の問題のない、新しいプロジェクトを始めるのであれば、最新の安定版PHPを取得すべきです。
より新しいベータ版のPHPをダウンロードすることが可能な場合もありますが、これにはバグが多く、開発者がフィードバックを集めるためにリリースされています。ほとんどの場合、安定版のリリースを使用したほうが良いでしょう。
古いバージョンはどうでしょうか?PHPの各バージョンには新しい機能が追加されていますが、それは古い機能と互換性がないことを意味します。もし、最新のPHPバージョンでサポートされない特定の機能が必要な場合は、古いバージョンを使用できます。しかしこの場合も、現在サポートされているバージョンのみを使用してください。
よくわからない場合は、最新バージョンのPHPを使用してください。
WordPressは、特定のバージョンのPHPのみをサポートすることに注意してください。技術的には5.6.20以上のPHPバージョンをサポートしていますが、かなり古いバージョンのため推奨されません。現在WordPressで最もよくサポートされているバージョンは、バージョン7.4~8.0です。
WordPressは、PHPバージョン8にも対応していますが、まだ新しいバージョンのため、現状ではすべてのプラグインが正常に動作するわけではありません。互換性の問題が心配であれば、PHPバージョン7.4を使用してください。様々なPHP CMSやフレームワークが異なるPHPバージョンでどのように動作するかについては、記事「PHPのベンチマーク」をご覧ください。
更新)Kinstaのお客様は、PHP 8.1(公式リリース)をご利用いただけます。なお、PHP7.4のサポートは終了しています。現在はPHPのバージョン7.4, 8.0, 8.1, 8.2, 8.3 , 8.4をサポートしています(Kinstaサイトのみに適用)。
LinuxでのPHPのインストール方法
始める前に、ターミナルと一般的なUnix系OSの操作方法を知っておく必要があります。また、以下に紹介するコマンドラインコードは、通常の構文を使用するLinuxディストリビューションであれば動作するはずですが、特定のOSのための注記を加えました。
まず、パッケージが最新であることを確認する必要があります。ターミナルで次のLinuxコマンドを実行してください。
sudo apt-get update && sudo apt-get upgrade
これで、PHPをインストールする準備が整いました。インストールのコマンドは単純です。
sudo apt-get install php
最新版のPHPといくつかのPHP拡張がインストールされます。次のコードで、インストールしたバージョンを確認できます。
php –v
特定のバージョンのPHP、たとえばPHP 7.4をインストールしたい場合はどうすればよいのでしょうか?これには、Ondřej Surý氏によるPPA(Personal Package Archive)を使用する必要があります。これは、サポートされている古いバージョンのPHPをインストールする安全な方法です。以下の3つのコマンドを、1つずつ実行します。
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
これでシステムがアーカイブを認識し、PHP 7.4をインストールできます。以下のコマンドを入力します。
sudo apt install php7.4
もちろん、数字は好きなPHPのバージョンで置き換えられます。
これで基本はカバーしました。構成でより高度なヘルプが必要であれば、Unix用のPHPインストールドキュメントを参照してください。
UbuntuでのPHPのインストール
Ubuntuユーザーは、上の手順に従う限り、特別な懸念はあまりありません。Ubuntuは最も人気のあるディストリビューションの1つで、ほとんどのLinuxのガイドは、実質的にUbuntu用に作られています。
代替案として、LAMPスタックをダウンロードする方法もあります。LAMPとは、Linux、Apache、MySQL、PHPの略です。サーバーのセットアップに必要なソフトウェアがすべてバンドルされています。
手動で別々にもダウンロードできますが、Taskelを使用すると、一度にすべてのソフトウェアをインストールできます。ターミナルで次の2つのコマンドを続けて実行してください。
sudo apt install tasksel
sudo tasksel install lamp-server
CentOS 7でのPHPのインストール
このオペレーティングシステムは、他のLinuxディストリビューションとは少し異なります。CentOSでは、aptやapt-getコマンドは、ソフトウェアをインストールする理想の方法ではありません。代わりに、RHELベースのオペレーティングシステム用のパッケージマネージャ「yum(Yellowdog Updater Modified)」を使用します。
それ以外は、使用するコマンドは非常に似ています。パッケージをアップデートするには、代わりにこのコマンドを実行してください。
sudo yum install epel-release && sudo yum update
他のコマンドについては、通常、apt-getをyumで置き換えられます。PHPをインストールするには、次のコマンドを使用します。
sudo yum install php
php –v
などのPHPコマンドはCentOS 7でも同じように動作するため、心配する必要はありません。
DebianでのPHPのインストール
Unix系OSのラストはDebianです。マイナーな注意点はありますが、上のコマンドのほとんどは問題なく使えるはずです。
Debianでは、ターミナルコマンドにapt-get
とaptitude
のどちらかを使えます。aptitude
コマンドの方が少し包括的で、メニューインターフェースを提供します。どちらを使うかは個人の好みで、どちらでも動作は同じです。
したがって、通常のapt-get
コマンドの代わりに、次のコマンドを実行できます。
sudo aptitude install php
Debianは気難しいところがあります。PHPが解析されない、あるいはPHP拡張が動作しない場合、サーバーのウェブ構成ファイルを更新し、PHP拡張のiniファイルを読み込んでいることを確認してください。
いくつかの小さな点を除けば、Debianの手順は他のLinuxディストリビューションの手順と実質的に同じです。
WindowsでのPHPのインストール方法
Windowsシステムを使用している場合、macOSやLinuxとは異なり、コマンドラインからPHPをインストールする必要はありません(オプションとして使用はできます)。
WindowsでPHPを簡単にインストールするには、IISを有効にしてからWebPIを使用してPHPをインストールします。WebPIを起動したら、「製品」タブの下を検索します。必要なバージョンの「追加」をクリックし、「インストール」をクリックします。
また、Windows用のPHPをダウンロードし、IISで動作するように手動でも設定できます。IISを使用する場合は、「non-thread-safe」バージョンを取得してください。
以上の手順が複雑すぎると感じる場合は、代わりにWampServerやXAMPPをインストールできます。ウェブサーバーのセットアップに必要なすべて、Apache、データベース、そしてもちろんPHPがバンドルされています。
この手順は、Windows 10、7、Vistaなど、ほとんどの最新のWindows OSで動作します。古いバージョンのWindowsを使用している場合は、以前のWindowsのインストールドキュメントを確認してください。
Windowsでは、PHPの正しい動作のために若干の追加設定が必要です。Windowsの推奨設定ドキュメントを確認してください。いくつかの小さなiniファイルの変更が必要です。
macOSでのPHPのインストール方法
PHPはほとんどのmacOSシステムにプリインストールされているため、通常は手動でインストールする必要はありません。
必要な作業は、Apacheの設定ファイル「httpd.conf」内の数行のコードのコメントを解除するだけで済みます。ファイルは通常/private/etc/apache2/httpd.conf
にあります。この2行のハッシュタグ記号(#)を削除して、コメントを解除します。
# LoadModule php5_module libexec/httpd/libphp5.so
# AddModule mod_php5.c
ファイル設定のデフォルト値を変更したい場合は、追加の設定が必要かもしれません。そうでなければ、DocumentRootを見つけて、以下のコードでPHPファイルを作成し、ロードしてください。
<?php phpinfo(); ?>
PHPが正しくインストールされたことを確認するには、php –v
コマンドを使用して、PHPのバージョンを確認してください。
もしPHPを手動でダウンロードする必要がある場合は、Homebrewをインストールし、次のコマンドを使用してください。
brew install php
PHP拡張について
PHPをセットアップし稼働できたら、PHP拡張について検討しましょう。PHP拡張は、コンパイル済みのライブラリで、あらゆる種類の拡張機能や有用な機能を追加できます。PHPですでに提供されている機能に追加するプラグインと考えてください。PHP拡張の中には、LaravelやSymfonyのようなPHPフレームワークの動作に必要なものもあります。
PHP拡張を使わずに、すべてを自分でコーディングすることも可能です。しかし、広く使われていて、時間を節約する近道があるときに、自分ですべてを行う理由はありません。
PHPにはすでに数十のPHP拡張が組み込まれており、手動で有効にしなければならないものから、すぐに使い始められるものまで様々です。また、PECLのようなサイトを通じてPHP拡張をインストールできます。PECLには数百のサードパーティ製パッケージがあります。
PHPのマニュアルには、多数のPHP拡張のドキュメントもあり、使い方のコツ等が紹介されています。
何から始めれば良いのか分からない方向けに、ここで、人気のあるPHP拡張の一例を紹介します。
- Apache:Apacheは、広く使われているウェブサーバーソフトウェアです。WordPressとPHPとの親和性の高さから、WordPressで推奨されています。ApacheはPHPにバンドルされているため、手動でインストールする必要はありません。
- .NET:.NETは、ウェブアプリケーションなどの構築に使用できる、人気のあるソフトウェアフレームワークです。PHPを含む複数の言語と連動します。.NETでPHPコードを実行できるPeachPieもチェックしてみてください。
- MySQLi:古いMySQL用PHP拡張の改良版で、MySQLデータベースソフトウェアと連携できます。データベースセットアップの必須拡張です。
PHP拡張をインストールする場合は、コメントを解除する必要があります。「php.ini」を開き、extension=extensionname
の前のセミコロン(;)を削除してください。
また、「PHPフレームワーク」もチェックしてください。コードを標準化し、事前に用意されたライブラリを利用してビルドできます。PHPでウェブアプリケーションの開発を始めるにあたっての素晴らしい方法です。
まとめ
使用しているOSが何であれ、PHPのインストールはそれほど難しい作業ではありません。WordPressのテストサーバーのセットアップでは、必須の作業です。PHPプログラマを目指している人には、ウェブサーバーをセットアップして、PHPをインストールすることはとても良い練習になるでしょう。
PHPはコマンドラインか、公式サイトからダウンロードしてください。PHPは、最新の安定版か、WordPressと互換性のあるその他のバージョンを取得できます。
WordPressのサイト開発をすぐにでも始めたい方は、DevKinstaも試してみてください。ここには、PHPがプリインストールされています。また、異なるバージョンのPHPをホットスワップできるため、異なるサーバー環境でサイトをテストできます。
コメントを残す