「インストール - PHP」の版間の差分
(→概要) |
|||
4行目: | 4行目: | ||
<br><br> | <br><br> | ||
== | == リポジトリの追加 == | ||
===== CentOS ===== | |||
以下のページを参照して、EPELリポジトリとRemiリポジトリを追加する。 | |||
[[YumリポジトリにEPELとRemiを追加する方法]] | |||
<br> | |||
===== SUSE ===== | |||
以下のコマンドを実行して、Develリポジトリを追加する。 | |||
# SUSE 15.1 | |||
sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/php/openSUSE_Leap_15.1/ php | |||
# SUSE 15.2 | |||
sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/php/openSUSE_Leap_15.2/ php | |||
# SLE 15 SP1 | |||
http://download.opensuse.org/repositories/devel:/languages:/php/SLE_15_SP1/ php | |||
<br> | |||
Develリポジトリからダウンロードされるパッケージの優先度を設定するため、以下のコマンドを実行する。 | |||
sudo zypper mr -p 70 php | |||
<br> | |||
次に、全てのリポジトリを更新する。<br> | |||
Develリポジトリを初めて使用する場合、GPGキーを受け入れるように求められる。 | |||
sudo zypper refresh | |||
<br><br> | |||
== PHP 7のインストール == | |||
===== CentOS ===== | |||
PHP 5をアンインストールするため、以下のコマンドを実行する。<br> | |||
このとき、php.iniファイルを変更している場合はバックアップを取る。<br> | このとき、php.iniファイルを変更している場合はバックアップを取る。<br> | ||
これは、新しいPHPをインストールした時点でphp.iniファイルが上書きされるためである。<br> | これは、新しいPHPをインストールした時点でphp.iniファイルが上書きされるためである。<br> | ||
sudo yum remove php-* | sudo yum remove php-* | ||
<br> | <br> | ||
次に、PHP 7をインストールする。<br> | |||
インストールは、--enablerepoオプションを付加して、以下のコマンドを実行する。<br> | インストールは、--enablerepoオプションを付加して、以下のコマンドを実行する。<br> | ||
アップデート後は、php.iniファイルが上書きされているのでバックアップから復元する。<br> | アップデート後は、php.iniファイルが上書きされているのでバックアップから復元する。<br> | ||
sudo yum --enablerepo=remi-php73 install php php-cli.x86_64 php-pdo.x86_64 php-gd.x86_64 php-mbstring.x86_64 php-common.x86_64 php-mysql php73-devel | sudo yum --enablerepo=remi-php73 install php php-cli.x86_64 php-pdo.x86_64 php-gd.x86_64 php-mbstring.x86_64 php-common.x86_64 php-mysql php73-devel | ||
<br> | |||
===== SUSE ===== | |||
PHP 7およびいくつかの主要なPHPモジュールをインストールする。 | |||
sudo zypper install php7 php apache2-mod_php7 php7-curl php7-xmlreader php7-zip php7-pdo php7-gd php7-json php7-mysql php7-mbstring php7-openssl php7-pecl php7-devel php7-fpm | |||
<br><br> | <br><br> | ||
2020年8月11日 (火) 03:47時点における版
概要
CentOSやSUSEの標準リポジトリにあるPHPのバージョンは古いことが多い。
また、PHP 7以降は大幅な改良がされており、実行速度をはじめ様々なものがアップデートされているので、特別な事情がない限りはアップグレードした方がよい。
リポジトリの追加
CentOS
以下のページを参照して、EPELリポジトリとRemiリポジトリを追加する。
YumリポジトリにEPELとRemiを追加する方法
SUSE
以下のコマンドを実行して、Develリポジトリを追加する。
# SUSE 15.1 sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/php/openSUSE_Leap_15.1/ php # SUSE 15.2 sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/php/openSUSE_Leap_15.2/ php # SLE 15 SP1 http://download.opensuse.org/repositories/devel:/languages:/php/SLE_15_SP1/ php
Develリポジトリからダウンロードされるパッケージの優先度を設定するため、以下のコマンドを実行する。
sudo zypper mr -p 70 php
次に、全てのリポジトリを更新する。
Develリポジトリを初めて使用する場合、GPGキーを受け入れるように求められる。
sudo zypper refresh
PHP 7のインストール
CentOS
PHP 5をアンインストールするため、以下のコマンドを実行する。
このとき、php.iniファイルを変更している場合はバックアップを取る。
これは、新しいPHPをインストールした時点でphp.iniファイルが上書きされるためである。
sudo yum remove php-*
次に、PHP 7をインストールする。
インストールは、--enablerepoオプションを付加して、以下のコマンドを実行する。
アップデート後は、php.iniファイルが上書きされているのでバックアップから復元する。
sudo yum --enablerepo=remi-php73 install php php-cli.x86_64 php-pdo.x86_64 php-gd.x86_64 php-mbstring.x86_64 php-common.x86_64 php-mysql php73-devel
SUSE
PHP 7およびいくつかの主要なPHPモジュールをインストールする。
sudo zypper install php7 php apache2-mod_php7 php7-curl php7-xmlreader php7-zip php7-pdo php7-gd php7-json php7-mysql php7-mbstring php7-openssl php7-pecl php7-devel php7-fpm
確認方法
最後に、インストールされたPHPのバージョンを確認するため、以下のコマンドを実行する。
php -v
運用していく上で必要な関連パッケージがあれば、適宜追加する。
インストール時の注意点
PHP7をインストールするとき、旧バージョンのPHPが指定されることを防ぐため、一旦すべてのリポジトリを無効化し、PHP7のリポジトリを指定する。
sudo yum --disablerepo=* --enablerepo=remi,remi-php73 install php hp-cli.x86_64 php-pdo.x86_64 php-gd.x86_64 php-mbstring.x86_64 php-common.x86_64 php-mysql php73-devel
EPELリポジトリおよびRemiリポジトリの追加方法で、EPELリポジトリの公開鍵を取得するためにlibargon2をインストールしているが、
このパッケージは、PHP7をインストールする際に依存性パッケージとして必要になる。
もし、libargon2をインストールせずにPHPをインストールしようとすると、恐らくEPELが無いために依存性が解決されない。
PHP7をインストールする前に、以下のコマンドを実行してlibargon2をインストールする。
sudo yum --disablerepo=* --enablerepo=epel install libargon2