What's?
Rocky Linux 10にPHPをインストールする方法をまとめておこうかなということで。
Rocky Linux 10へのPHPのインストール
これはPHPのダウンロードページを見るのがよいと思います。
こんな感じで、OSの種類やディストリビューションごとのインストール方法を教えてくれます。
Rocky Linuxの場合は、「Fedora」を選ぶのがよいと思います。
ここで紹介されるのは、以下の2つのインストール方法です。
- OSの標準パッケージからのインストール
- Remi Repositoryを使ったインストール
現時点での選択肢はこちら。
バージョンを指定すると、インストール方法がRemi Repositoryに切り替わります。
Remi Repositoryについてはこちらを参考に。
Remi RepositoryのWebサイトはこちらです。
ところでRocky Linuxならディストリビューションに「RedHat」を選択するのがよいのでは?と思うかもしれませんが、この場合はCodeReady Linux Builderが案内されるのでちょっと扱いが違います。
今回は標準パッケージとRemi Repositoryからのインストールを簡単に紹介してみます。
環境
今回の環境はこちらです。
$ cat /etc/redhat-release
Rocky Linux release 10.2 (Red Quartz)
$ uname -srvmpio
Linux 6.12.0-211.49.1.el10_2.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Aug 20 14:59:37 UTC 2026 x86_64 unknown unknown GNU/Linux
標準パッケージからPHP 8.4をインストールする
まずは標準パッケージからのインストールを見ていきましょう。
インストールできるバージョンを確認する
パッケージ「php」を確認すると、PHP 8.3が案内されます。
$ dnf info php
メタデータの期限切れの最終確認: 0:00:02 前の 2026年08月23日 19時14分56秒 に実施しました。
利用可能なパッケージ
名前 : php
バージョン : 8.3.32
リリース : 1.el10_2
Arch : x86_64
サイズ : 7.8 k
ソース : php-8.3.32-1.el10_2.src.rpm
リポジトリー : appstream
概要 : PHP scripting language for creating dynamic web sites
URL : http://www.php.net/
ライセンス : PHP-3.01 AND Zend-2.0 AND BSD-2-Clause AND MIT AND Apache-1.0 AND NCSA AND BSL-1.0
説明 : PHP is an HTML-embedded scripting language. PHP attempts to make it
: easy for developers to write dynamically generated web pages. PHP also
: offers built-in database integration for several commercial and
: non-commercial database management systems, so writing a
: database-enabled webpage with PHP is fairly simple. The most common
: use of PHP coding is probably as a replacement for CGI scripts.
この時点でアクティブなPHPのバージョンは8.4と8.5なので、ちょっと古いですね。
ちなみに「php8」で検索すると、php8.4が見つかります。
$ dnf search php8 | head
メタデータの期限切れの最終確認: 0:02:23 前の 2026年08月23日 19時14分56秒 に実施しました。
=============================== 名前 一致: php8 ================================
php8.4.x86_64 : PHP scripting language for creating dynamic web sites
php8.4-bcmath.x86_64 : A module for PHP applications for using the bcmath library
php8.4-cli.x86_64 : Command-line interface for PHP
php8.4-common.x86_64 : Common files for PHP
php8.4-dba.x86_64 : A database abstraction layer module for PHP applications
php8.4-dbg.x86_64 : The interactive PHP debugger
php8.4-devel.x86_64 : Files needed for building PHP extensions
php8.4-embedded.x86_64 : PHP library for embedding in applications
php8.4-enchant.x86_64 : Enchant spelling extension for PHP applications
$ dnf info php8.4
メタデータの期限切れの最終確認: 0:02:52 前の 2026年08月23日 19時14分56秒 に実施しました。
利用可能なパッケージ
名前 : php8.4
バージョン : 8.4.24
リリース : 1.el10_2
Arch : x86_64
サイズ : 11 k
ソース : php8.4-8.4.24-1.el10_2.src.rpm
リポジトリー : appstream
概要 : PHP scripting language for creating dynamic web sites
URL : http://www.php.net/
ライセンス : PHP-3.01 AND Zend-2.0 AND BSD-2-Clause AND MIT AND Apache-1.0 AND NCSA AND BSL-1.0
説明 : PHP is an HTML-embedded scripting language. PHP attempts to make it
: easy for developers to write dynamically generated web pages. PHP also
: offers built-in database integration for several commercial and
: non-commercial database management systems, so writing a
: database-enabled webpage with PHP is fairly simple. The most common
: use of PHP coding is probably as a replacement for CGI scripts.
つまり、Rocky Linux 10の標準パッケージでは、PHP 8.3またはPHP 8.4がインストールできることになります。
8.5はインストールできません。
PHP 8.4をインストールする
では、今回はPHP 8.4をインストールしてみましょう。
$ sudo dnf install php8.4
依存関係など。
================================================================================================================================================================================
パッケージ アーキテクチャー バージョン リポジトリー サイズ
================================================================================================================================================================================
インストール:
php8.4 x86_64 8.4.24-1.el10_2 appstream 11 k
依存関係のインストール:
apr x86_64 1.7.5-3.el10 appstream 127 k
apr-util x86_64 1.6.3-23.el10_1 appstream 97 k
apr-util-lmdb x86_64 1.6.3-23.el10_1 appstream 13 k
capstone x86_64 5.0.1-8.el10_2 appstream 1.0 M
httpd-core x86_64 2.4.63-13.el10_2.5 appstream 1.4 M
httpd-filesystem noarch 2.4.63-13.el10_2.5 appstream 14 k
httpd-tools x86_64 2.4.63-13.el10_2.5 appstream 81 k
libxslt x86_64 1.1.39-8.el10_2.1 appstream 189 k
mailcap noarch 2.1.54-8.el10 baseos 34 k
nginx-filesystem noarch 2:1.26.3-6.el10_2.5 appstream 11 k
php8.4-common x86_64 8.4.24-1.el10_2 appstream 758 k
rocky-logos-httpd noarch 100.5-3.el10 appstream 24 k
弱い依存関係のインストール:
apr-util-openssl x86_64 1.6.3-23.el10_1 appstream 15 k
httpd x86_64 2.4.63-13.el10_2.5 appstream 48 k
mod_http2 x86_64 2.0.29-4.el10_2.2 appstream 164 k
mod_lua x86_64 2.4.63-13.el10_2.5 appstream 60 k
php8.4-cli x86_64 8.4.24-1.el10_2 appstream 3.8 M
php8.4-fpm x86_64 8.4.24-1.el10_2 appstream 1.9 M
php8.4-mbstring x86_64 8.4.24-1.el10_2 appstream 528 k
php8.4-opcache x86_64 8.4.24-1.el10_2 appstream 524 k
php8.4-pdo x86_64 8.4.24-1.el10_2 appstream 93 k
php8.4-xml x86_64 8.4.24-1.el10_2 appstream 691 k
トランザクションの概要
================================================================================================================================================================================
インストール 23 パッケージ
ダウンロードサイズの合計: 11 M
インストール後のサイズ: 60 M
そのままインストールすると、PHP-FPMやApacheもついてきます。
バージョン確認。
$ php --version
PHP 8.4.24 (cli) (built: Jul 29 2026 05:29:50) (NTS gcc x86_64)
Copyright (c) The PHP Group
Built by Rocky Enterprise Software Foundation
Zend Engine v4.4.24, Copyright (c) Zend Technologies
with Zend OPcache v8.4.24, Copyright (c), by Zend Technologies
Apache+PHP-FPMで動作確認する
PHP-FPMとApacheがついてきているので、動作確認しておきましょう。
ちなみに、PHP向けのApacheの設定はこんな感じでインストールされていました。
#
# The following lines prevent .user.ini files from being viewed by Web clients.
#
<Files ".user.ini">
Require all denied
</Files>
#
# Allow php to handle Multiviews
#
AddType text/html .php
#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php
#
# Redirect to local php-fpm (no mod_php in default configuration)
#
<IfModule !mod_php.c>
# Enable http authorization headers
SetEnvIfNoCase ^Authorization$ "(.+)" HTTP_AUTHORIZATION=$1
<FilesMatch \.(php|phar)$>
SetHandler "proxy:unix:/run/php-fpm/www.sock|fcgi://localhost"
</FilesMatch>
</IfModule>
#
# mod_php is deprecated as FPM is now used by default with httpd in event mode
# mod_php is only used when explicitly enabled or httpd switch to prefork mode
#
# mod_php options
#
<IfModule mod_php.c>
#
# Cause the PHP interpreter to handle files with a .php extension.
#
<FilesMatch \.(php|phar)$>
SetHandler application/x-httpd-php
</FilesMatch>
#
# Uncomment the following lines to allow PHP to pretty-print .phps
# files as PHP source code:
#
#<FilesMatch \.phps$>
# SetHandler application/x-httpd-php-source
#</FilesMatch>
#
# Apache specific PHP configuration options
# those can be override in each configured vhost
#
php_value session.save_handler "files"
php_value session.save_path "/var/lib/php/session"
php_value soap.wsdl_cache_dir "/var/lib/php/wsdlcache"
#php_value opcache.file_cache "/var/lib/php/opcache"
</IfModule>
動作確認用ファイルを作成。
<?php
phpinfo();
PHP-FPMとApacheを起動。
$ sudo systemctl start php-fpm
$ sudo systemctl start httpd
http://localhostにアクセスして結果を確認。
OKですね。
自動起動設定まで入れておきましょう。
$ sudo systemctl enable php-fpm
$ sudo systemctl enable httpd
Remi RepositoryからPHP 8.5をインストールする
Remi Repositoryを使うと、PHP 8.5をインストールできます。
Remi Repositoryの有効化
Remi Repositoryの有効にするには、こちらのページを参照してOSのバージョンにあったリポジトリをインストールします。
Rocky Linux 10の場合はこうですね。
$ sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-10.rpm
PHP 8.5をインストールする
次に、phpパッケージをRemiのPHP 8.5に切り替えます。
$ sudo dnf module reset php
$ sudo dnf module enable php:remi-8.5
これで「php」パッケージがPHP 8.5になりました。
$ dnf info php
メタデータの期限切れの最終確認: 0:00:07 前の 2026年08月23日 19時48分08秒 に実施しました。
利用可能なパッケージ
名前 : php
バージョン : 8.5.9
リリース : 1.module_php.8.5.el10.remi
Arch : x86_64
サイズ : 3.0 M
ソース : php-8.5.9-1.module_php.8.5.el10.remi.src.rpm
リポジトリー : remi-modular
概要 : PHP scripting language for creating dynamic web sites
URL : http://www.php.net/
ライセンス : PHP-3.01 AND Zend-2.0 AND BSD-2-Clause AND MIT AND Apache-1.0 AND Apache-2.0 AND NCSA AND BSL-1.0
説明 : PHP is an HTML-embedded scripting language. PHP attempts to make it
: easy for developers to write dynamically generated web pages. PHP also
: offers built-in database integration for several commercial and
: non-commercial database management systems, so writing a
: database-enabled webpage with PHP is fairly simple. The most common
: use of PHP coding is probably as a replacement for CGI scripts.
:
: The php package contains the module (often referred to as mod_php)
: which adds support for the PHP language to Apache HTTP Server.
インストール。
$ sudo dnf install php
依存関係。
依存関係が解決しました。
================================================================================================================================================================================
パッケージ アーキテクチャー バージョン リポジトリー サイズ
================================================================================================================================================================================
インストール:
php x86_64 8.5.9-1.module_php.8.5.el10.remi remi-modular 3.0 M
依存関係のインストール:
apr x86_64 1.7.5-3.el10 appstream 127 k
apr-util x86_64 1.6.3-23.el10_1 appstream 97 k
apr-util-lmdb x86_64 1.6.3-23.el10_1 appstream 13 k
capstone x86_64 5.0.1-8.el10_2 appstream 1.0 M
httpd-core x86_64 2.4.63-13.el10_2.5 appstream 1.4 M
httpd-filesystem noarch 2.4.63-13.el10_2.5 appstream 14 k
httpd-tools x86_64 2.4.63-13.el10_2.5 appstream 81 k
libsodium x86_64 1.0.22-1.el10_2 epel 214 k
libxslt x86_64 1.1.39-8.el10_2.1 appstream 189 k
mailcap noarch 2.1.54-8.el10 baseos 34 k
oniguruma5php x86_64 6.9.10-1.el10.remi remi-safe 217 k
php-common x86_64 8.5.9-1.module_php.8.5.el10.remi remi-modular 812 k
弱い依存関係のインストール:
apr-util-openssl x86_64 1.6.3-23.el10_1 appstream 15 k
nginx-filesystem noarch 2:1.26.3-6.el10_2.5 appstream 11 k
php-cli x86_64 8.5.9-1.module_php.8.5.el10.remi remi-modular 6.0 M
php-fpm x86_64 8.5.9-1.module_php.8.5.el10.remi remi-modular 3.0 M
php-mbstring x86_64 8.5.9-1.module_php.8.5.el10.remi remi-modular 531 k
php-pdo x86_64 8.5.9-1.module_php.8.5.el10.remi remi-modular 98 k
php-sodium x86_64 8.5.9-1.module_php.8.5.el10.remi remi-modular 43 k
php-xml x86_64 8.5.9-1.module_php.8.5.el10.remi remi-modular 238 k
トランザクションの概要
================================================================================================================================================================================
インストール 21 パッケージ
ダウンロードサイズの合計: 17 M
インストール後のサイズ: 75 M
ちなみに、以下のコマンドでもインストールできます。
$ sudo dnf module install php:remi-8.5
こちらの場合は、インストールされる依存関係がぐっと小さくなります。
依存関係が解決しました。
================================================================================================================================================================================
パッケージ アーキテクチャー バージョン リポジトリー サイズ
================================================================================================================================================================================
group/moduleパッケージをインストール:
php-cli x86_64 8.5.9-1.module_php.8.5.el10.remi remi-modular 6.0 M
php-common x86_64 8.5.9-1.module_php.8.5.el10.remi remi-modular 812 k
php-fpm x86_64 8.5.9-1.module_php.8.5.el10.remi remi-modular 3.0 M
php-mbstring x86_64 8.5.9-1.module_php.8.5.el10.remi remi-modular 531 k
php-xml x86_64 8.5.9-1.module_php.8.5.el10.remi remi-modular 238 k
依存関係のインストール:
capstone x86_64 5.0.1-8.el10_2 appstream 1.0 M
httpd-filesystem noarch 2.4.63-13.el10_2.5 appstream 14 k
libxslt x86_64 1.1.39-8.el10_2.1 appstream 189 k
oniguruma5php x86_64 6.9.10-1.el10.remi remi-safe 217 k
弱い依存関係のインストール:
nginx-filesystem noarch 2:1.26.3-6.el10_2.5 appstream 11 k
モジュールプロファイルのインストール中:
php/common
トランザクションの概要
================================================================================================================================================================================
インストール 10 パッケージ
ダウンロードサイズの合計: 12 M
インストール後のサイズ: 58 M
今回はこちらにしておきます。
$ sudo dnf install php
バージョン確認。
$ php --version
PHP 8.5.9 (cli) (built: Jul 28 2026 13:06:52) (NTS gcc x86_64)
Copyright (c) The PHP Group
Built by Remi's RPM repository <https://rpms.remirepo.net/> #StandWithUkraine
Zend Engine v4.5.9, Copyright (c) Zend Technologies
with Zend OPcache v8.5.9, Copyright (c), by Zend Technologies
Apache+PHP-FPMで動作確認する
こちらのインストール方法でもApacheの設定ファイルがついてきます。
#
# The following lines prevent .user.ini files from being viewed by Web clients.
#
<Files ".user.ini">
<IfModule mod_authz_core.c>
Require all denied
</IfModule>
<IfModule !mod_authz_core.c>
Order allow,deny
Deny from all
Satisfy All
</IfModule>
</Files>
#
# Allow php to handle Multiviews
#
AddType text/html .php
#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php
# mod_php options
<IfModule mod_php.c>
#
# Cause the PHP interpreter to handle files with a .php extension.
#
<FilesMatch \.(php|phar)$>
SetHandler application/x-httpd-php
</FilesMatch>
#
# Uncomment the following lines to allow PHP to pretty-print .phps
# files as PHP source code:
#
#<FilesMatch \.phps$>
# SetHandler application/x-httpd-php-source
#</FilesMatch>
#
# Apache specific PHP configuration options
# those can be override in each configured vhost
#
php_value session.save_handler "files"
php_value session.save_path "/var/lib/php/session"
php_value soap.wsdl_cache_dir "/var/lib/php/wsdlcache"
#php_value opcache.file_cache "/var/lib/php/opcache"
</IfModule>
# Redirect to local php-fpm if mod_php (5 or 7) is not available
<IfModule !mod_php5.c>
<IfModule !mod_php7.c>
<IfModule !mod_php.c>
# Enable http authorization headers
SetEnvIfNoCase ^Authorization$ "(.+)" HTTP_AUTHORIZATION=$1
<FilesMatch \.(php|phar)$>
SetHandler "proxy:unix:/run/php-fpm/www.sock|fcgi://localhost"
</FilesMatch>
</IfModule>
</IfModule>
</IfModule>
なんならnginxの設定ファイルもついてきますが。
$ tree /etc/nginx
/etc/nginx
├── conf.d
│ └── php-fpm.conf
└── default.d
└── php.conf
3 directories, 2 files
今回のインストール方法の場合、PHP-FPMはインストールされていますが、Apacheはそうではありません。
Apacheをインストール。
$ sudo dnf install httpd
動作確認用ファイルを作成。
<?php
phpinfo();
PHP-FPMとApacheを起動。
$ sudo systemctl start php-fpm
$ sudo systemctl start httpd
http://localhostにアクセスして結果を確認。
OKですね。
自動起動設定まで入れておきましょう。
$ sudo systemctl enable php-fpm
$ sudo systemctl enable httpd
こんなところでしょうか。




