FrankenPHP: 最新の PHP アプリ サーバーの未来
FrankenPHP は、PHP アプリケーションのパフォーマンスと機能を強化する、PHP 用の最新のアプリケーション サーバーです。これは Caddy Web サーバーと呼ばれる別のサーバー上に構築されており、 開発者がApache や Nginx などの従来の Web サーバーを必要とせずに PHP アプリケーションを効率的に実行できるようにします。
FrankenPHP は、最初の読み込み後にアプリケーションをメモリ内に保持することで、PHP アプリケーションの実行を高速化します。そのため、リクエストごとに最初から開始する必要がなく、速度の大幅な向上につながります。
FrankenPHP を使用すると、PHP-FPM (FastCGI プロセス マネージャー) や Web サーバーなどの個別のプロセスをセットアップする必要はありません。 > Nginx またはApache。すべてが 1 か所で実行されるため、管理が容易になります。
このガイドでは、FrankenPHP を Ubuntu 24.04 にインストールするプロセスを簡単な手順で説明します。
ステップ 1: Ubuntu 24.04 に PHP をインストールする
まず、システム パッケージを更新して、最新のソフトウェアを確実に入手できるようにすることから始めます。
sudo apt update
sudo apt upgrade -y
次に、PHP やその他の必要なライブラリなど、いくつかの必須パッケージをインストールする必要があります。
sudo apt install zip unzip curl -y
必要な依存関係がインストールされたら、最新バージョンの PHP を提供する Ondrej の PPA から PHP 8.4 をインストールできます。
sudo add-apt-repository ppa:ondrej/php -y
sudo apt update
sudo apt install php8.4 php8.4-cli php8.4-fpm php8.4-{bz2,curl,mbstring,intl,xml} -y
php -v
ステップ 2: Ubuntu 24.04 に FrankenPHP をインストールする
PHP がインストールされたので、次のcurl コマンドを使用してFrankenPHP のインストールに進むことができます。
curl https://frankenphp.dev/install.sh | sh
sudo mv frankenphp /usr/local/bin/
ステップ 3: PHP アプリケーションを実行する
FrankenPHP を使用して PHP アプリケーションを提供するには、Web アプリケーション用のディレクトリと単純な PHP スクリプトを作成します。
mkdir -p ~/my-app && cd ~/my-app
echo '<?php echo "Hello, FrankenPHP!"; ?>' > index.php
現在のディレクトリのコンテンツを提供するには、次を実行します。
sudo frankenphp php-server
ブラウザを開いて次のアドレスに移動すると、「Hello, FrankenPHP!」というメッセージが表示されます。
http://localhost/
Or
http://ip-address/
ステップ 4: Nginx をリバース プロキシとして設定する
Nginx などのリバース プロキシを使用すると、リクエストの処理が改善され、追加のセキュリティ層が追加され、SSL/TLS 構成が簡素化されます。
sudo apt install -y nginx
新しい設定ファイルを作成します。
sudo nano /etc/nginx/sites-available/frankenphp
次の構成を追加します。
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
yourdomain.com
を実際のドメイン名に置き換えます。
次に、設定を有効にして nginx をリロードします。
sudo ln -s /etc/nginx/sites-available/frankenphp /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
ステップ 5: 安全な接続のための SSL/TLS の構成
FrankenPHP が運用環境で効率的かつ安全に実行されるようにするには、Let’s Encrypt から無料の SSL 証明書を取得および更新するための一般的なツールであるCertbot をインストールする必要があります。
sudo apt install -y certbot
sudo apt install -y python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
sudo certbot renew --dry-run
結論
FrankenPHP が Ubuntu 24.04 システムにインストールされ、実行されています。これらの手順に従うことで、最新の Web アプリケーションに適した高パフォーマンスの PHP ランタイムがセットアップされました。
高度な構成については、FrankenPHP のドキュメントを参照してください。