AWS の EC2 上で Amazon Linux 2023 に PHP 8.2 と Apache をインストールする

AWS の EC2 上で Amazon Linux 2023 に PHP 8.2 と Apache をインストールする

今回は、Amazon Linux 2023 に PHP 8.2 と Apache をインストールする方法を紹介します。実際の使用に合わせて、手順や内容についても説明していきます。

こんにちは、クラスメソッドタイランドのPOPです。


PHP とは

PHP (PHP: Hypertext Preprocessor) は、主にウェブ開発に使用されるサーバーサイドのスクリプト言語です。動的なウェブページを作成するために広く利用されており、HTML と組み合わせて使用されます。PHP はデータベースとの連携が得意で、MySQL などのデータベースと簡単に統合できます。また、オープンソースであり、多くのフレームワークやライブラリが存在するため、開発者にとって非常に便利です。PHP は、シンプルなウェブサイトから大規模なアプリケーションまで、さまざまなプロジェクトに対応できます。

PHP 8.2

PHP 8.2 は、PHPプログラミング言語の最新バージョンの一つで、パフォーマンスの向上や新機能の追加が行われています。特に、型システムの強化や新しい構文が導入され、開発者にとってより使いやすくなっています。

PHP 8.2 については、以下のリンクを参照してください。
PHP 8.2 Released!

前提条件

※EC2 インスタンスが作成済であること。

EC2 インスタンスの作成方法については、以下のリンクを参照してください。
https://dev.classmethod.jp/articles/how-to-install-amazon-linux-2023-on-ec2-jp/

Amazon Linux 2023 を作成し、PuTTY または他のプログラムを使用して EC2 インスタンスサーバーに接続したら、 PHP 8.2 と Apache のインストールに関するコマンドの実行を開始する前に、次の基本的な Linux コマンドを実行します。

root 権限を持つユーザーとしてログインするコマンドを実行します。

sudo su -

サーバーを最新の状態に更新するコマンドを実行します。

yum update -y

PHP 8.2 と Apache のインストール

PHP 8.2 と Apache のインストールコマンドを実行します。

yum install php8.2 httpd -y

PHP と Apache のバージョンを確認するコマンドを実行します。

php -v
httpd -v

Output (example)

[root@ip-xx-xx-xx-xx ~]# php -v
PHP 8.2.23 (cli) (built: Aug 27 2024 15:32:20) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.2.23, Copyright (c) Zend Technologies
    with Zend OPcache v8.2.23, Copyright (c), by Zend Technologies
[root@ip-xx-xx-xx-xx ~]# httpd -v
Server version: Apache/2.4.62 (Amazon Linux)
Server built:   Jul 23 2024 00:00:00
[root@ip-xx-xx-xx-xx ~]#

Apache システムを起動するコマンドを実行します。

systemctl start httpd

Linux を再起動した時に Apache を起動するための設定コマンドを実行します。

systemctl enable httpd

ローカルのファイルシステム上でファイルまたはディレクトリに対してアクセス許可を設定するコマンドを実行します。

chmod 777 /var/www/html/

PHP テストファイルを作成するコマンドを実行します。今回はファイル名を「test.php」にします。

echo "<?php phpinfo();" > /var/www/html/test.php

セキュリティグループの設定

PHP 8.2 と Apache をインストールした後、Webサイトの表示で使用する EC2 インスタンスのパブリック IPv4 アドレスは、まだ使用できません。

下記のURLを開こうとすると、下図のように「ERROR: Gateway Timeout」というメッセージが表示されます。したがって、Webサイトを表示する前に、セキュリティグループを設定する必要があります。

http://【パブリック IPv4 アドレス】/test.php

set_sg-1

以下の手順に従って Webサイトの画面を表示できるようにセキュリティグループを設定します。

EC2 インスタンス画面に移動し、「インスタンス ID」を検索してクリックします。
set_sg-2

「セキュリティ」タブを選択して「セキュリティグループ」をクリックします。
set_sg-3

次に、インバウンドルールのタブに「インバウンドのルールを編集」をクリックします。
set_sg-4

次に、「ルールを追加」をクリックすると、ルールが追加されます。
「タイプ: HTTP」、「ソース: Anywhere-IPv4」を選択し、「ルールを保存」をクリックします。
set_sg-5

次に、「インバウンドルール」のタブを再度確認すると、「タイプ: HTTP」が追加されていることがわかります。
set_sg-6

EC2 インスタンスの URL をテストする

再度 EC2 インスタンス画面に移動し、次のステップで使用するように「❐ パブリック IPv4 アドレス」をクリックしてコピーします。
set_sg-7

次に、以下のように「パブリック IPv4 アドレス + test.php」を入力して、使用するブラウザで URL を開きます。

http://【パブリック IPv4 アドレス】/test.php

PHP の Webサイトの画面を表示するために EC2 インスタンスの URL を使用できることがわかります。
set_sg-8

まとめ

この記事で説明するコマンドを実行することで、PHP 8.2 と Apache を Amazon Linux 2023 に簡単にインストールして使用できます。

この記事がどなたかのお役に立てば幸いです。
以上、クラスメソッドタイランドのPOP(Tinnakorn Maneewong)でしたっ!

関連記事

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.