この記事では、CentOS 8 で PHP-FPM を使用して Apache をインストールおよび構成するために必要な手順について説明しました。このチュートリアルを続行する前に、次のようにログインしていることを確認してください。 sudo
を持つユーザー 特権。このチュートリアルのすべてのコマンドは、root 以外のユーザーとして実行する必要があります。
前提条件:
- CentOS 8 を搭載したオペレーティング システム
- スーパーユーザー権限を持つサーバー IPv4 アドレス (ルート アクセス)
- Linux デスクトップ用 Gnome ターミナル
- Windows または macOS 用の PuTTy SSH クライアント
- Windows 10/11 用 Powershell
- DNF コマンドに精通している
CentOS 8 に PHP-FPM を使用して Apache をインストールする
ステップ 1. 最初のコマンドはパッケージ リストを更新し、最新バージョンと依存関係を確実に取得します。
sudo dnf update
ステップ 2. Apache をインストールします。
Apache はデフォルトの CentOS リポジトリで利用できます。Apache をインストールする準備ができました:
sudo dnf install httpd httpd-tools mod_ssl
インストールが完了したら、Apache サービスを有効にして開始します:
sudo systemctl enable httpd sudo systemctl start httpd
Web サーバーが正しくインストールされていることを確認するために、Web サーバーのバージョンを確認することもできます:
httpd -v
インストール中に、Apache は、HTTP (80) および HTTPS (443) ポートへのアクセスを許可するための事前定義されたルールを使用して、firewalld サービス ファイルを作成します。次のコマンドは、必要なポートを永続的に開きます:
sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload
ステップ 3. PHP-FPM を使用して PHP をインストールします。
PHP 7.4 をインストールするには、次のコマンドを実行して Remi リポジトリを有効にします:
sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm
次に、適切なバージョンを有効にします:
sudo dnf module reset php sudo dnf module enable php:remi-7.4
次のコマンドは、PHP-FPM といくつかの最も一般的な PHP モジュールをインストールします:
sudo dnf update sudo apt install php php-fpm php-gd php-mysqlnd
PHP は FPM を使用し、依存関係としてインストールされ、FastCGI サーバーとして使用されます。 FPM サービスを開始し、起動時に自動的に開始されるようにします:
sudo systemctl enable --now php-fpm sudo systemctl start php-fpm
ステップ 4. PHP-FPM を構成します。
構成プロセスを開始しましょう。まず、Apache 用の PHP-FPM 構成ファイルを編集します。
sudo nano /etc/php-fpm.d/www.conf
; listen = 127.0.0.1:9000 listen = /run/php-fpm/www.sock user = apache group = apache listen.allowed_clients = 127.0.0.1 listen.owner = apache listen.group = apache listen.mode = 0660 pm = dynamic
次のコマンドを使用して php-fpm サービスを再起動すると、準備完了です:
sudo systemctl restart php-fpm
ステップ 5. Apache VirtualHost を作成します。
ここで、PHP ファイルの処理に php-fpm を使用するように Apache を構成します。この例では、特定の仮想ホストのみに FPM を構成しています:
sudo nano /etc/httpd/conf.d/example.com.conf
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html ServerName example.com ServerAlias www.example.com # Proxy declaration <Proxy "unix:/run/php-fpm/www.sock|fcgi://php-fpm"> # we must declare a parameter in here (doesn't matter which) or # it'll not register the proxy ahead of time ProxySet disablereuse=off # Note: If you configure php-fpm to use the "pm = ondemand" #then use "ProxySet disablereuse=on" </Proxy> <FilesMatch \.php$> SetHandler proxy:fcgi://php-fpm </FilesMatch> ErrorLog logs/example.com-error.log CustomLog logs/example.com-access.log combined </VirtualHost>
仮想ホスト構成ファイルを保存し、Apache をリロードして変更を適用します:
sudo systemctl restart httpd
ステップ 6. セットアップをテストします。
環境をテストするには、phpinfo() 関数を使用して PHP スクリプトを作成します。このファイルをサーバー ドキュメント ルートに配置します。これを行うには、以下のコマンドを使用します:
echo "<?php phpinfo(); ?>" > /var/www/html/info.php
次に、Apache VirtualHost で構成したドメインのサーバー IP アドレス (デフォルトの VirtualHost 用) を使用して info.php にアクセスします。
http://localhost/info.php
CentOS 8 に LAMP スタックをインストールするために必要なことはこれだけです。このクイック ヒントがお役に立てば幸いです。ご質問やご提案がありましたら、お気軽にコメントを残してください。