📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

 
(同じ利用者による、間の12版が非表示)
53行目: 53行目:
===== PHP 7をインストールする場合 (パッケージ管理システムのみ) =====
===== PHP 7をインストールする場合 (パッケージ管理システムのみ) =====
PHPおよび主要なPHPモジュールをインストールする。<br>
PHPおよび主要なPHPモジュールをインストールする。<br>
  sudo zypper install php7 php apache2-mod_php7 php7-curl php7-xmlreader php7-zip php7-pdo php7-gd php7-json php7-mysql php7-mbstring \</code>
  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 php7-fileinfo php7-phar
                     php7-openssl php7-pecl php7-devel php7-fpm php7-fileinfo php7-phar
<br>
<br>
===== PHP 8をインストールする場合 =====
===== PHP 8をインストールする場合 =====
* パッケージ管理システムからインストール
* パッケージ管理システムからインストール
*: <code>sudo zypper install php8 php8-devel php8-curl php8-zip php8-mbstring php8-fileinfo php8-gd \</code>
*: <syntaxhighlight lang="text">
*: <code>                    php8-mysql php8-fpm apache2-mod_php8</code>
sudo zypper install php8 php8-devel php8-curl php8-zip php8-mbstring php8-fileinfo php8-gd \
                    php8-mysql php8-fpm apache2-mod_php8
</syntaxhighlight>
*: <br>
*: <br>
* リポジトリを追加してインストール
* リポジトリを追加してインストール
*: まず、Develリポジトリを追加する。
*: まず、Develリポジトリを追加する。
*: SLE 15 SP5 : <code>sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/php/SLE_15_SP6/ PHP</code>
*: <syntaxhighlight lang="text">
*: SLE 15 SP5 : <code>sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/php/SLE_15_SP5/ PHP</code>
# SLE 15 SP7 〜 SLE 16
*: SLE 15 SP4 : <code>sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/php/SLE_15_SP4/ PHP</code>
sudo zypper ar 'http://download.opensuse.org/repositories/devel:/languages:/php/$releasever/' PHP
*: SLE 15 SP3 : <code>sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/php/SLE_15_SP3/ PHP</code>
# SLE 15 SP6
sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/php/SLE_15_SP6/ PHP
# SLE 15 SP5
sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/php/SLE_15_SP5/ PHP
# openSUSE Leap 16.0
sudo zypper ar 'http://download.opensuse.org/repositories/devel:/languages:/php/$releasever/' PHP
# openSUSE Leap 15.6
sudo zypper ar http://download.opensuse.org/repositories/devel:/languages:/php/openSUSE_Leap_15.6/ PHP
</syntaxhighlight>
*: <br>
*: <br>
*: Develリポジトリの優先度を高く設定する。
*: Develリポジトリの優先度を高く設定する。
*: <code>sudo zypper mr -p 90 PHP</code>
*: <pre>sudo zypper mr -p 90 PHP</pre>
*: <br>
*: <br>
*: リポジトリを更新する。
*: リポジトリを更新する。
*: Develリポジトリを初めて使用する場合、GPGキーを受け入れるように求められる。
*: Develリポジトリを初めて使用する場合、GPGキーを受け入れるように求められる。
*: <code>sudo zypper refresh</code>
*: <pre>sudo zypper refresh</pre>
*: <br>
*: <br>
*: PHP 8をインストールする。
*: PHP 8をインストールする。
*: <code>sudo zypper install php8 apache2-mod_php8 php8-curl php8-xmlreader php8-zip php8-pdo php8-gd php8-json php8-mysql php8-mbstring \</code>
*: <syntaxhighlight lang="text">
*: <code>                    php8-openssl php8-devel php8-fpm php8-fileinfo php8-phar</code>
sudo zypper install php8 apache2-mod_php8 php8-curl php8-xmlreader php8-zip php8-pdo php8-gd php8-json php8-mysql php8-mbstring \
                    php8-openssl php8-devel php8-fpm php8-fileinfo php8-phar
</syntaxhighlight>
<br>
<br>
SUSEのデフォルトのPHP-FPMは、<code>--with-fpm-user=wwwrun</code>オプションと<code>--with-fpm-group=www</code>オプションを付加してコンパイルされている。<br>
SUSEのデフォルトのPHP-FPMは、<code>--with-fpm-user=wwwrun</code> オプション と <code>--with-fpm-group=www</code> オプションを付加してコンパイルされている。<br>
ユーザ名がwwwrun、グループ名がwwwとなっている。<br>
<u>したがって、ユーザ名がwwwrun、グループ名がwwwであることに注意する。</u><br>
<br>
<br>


==== Raspberry Pi ====
==== Raspberry Pi ====
===== 標準リポジトリ =====
パッケージリストの更新を行う。<br>
sudo apt update
<br>
外部リポジトリからインストール可能なPHPパッケージの情報を確認する。<br>
sudo apt-cache policy php
<br>
PHPおよび主要なPHPモジュールをインストールする。<br>
# PHP 8 (Trixie)
sudo apt install php8.4 php8.4-cli php8.4-mysql php8.4-mbstring php8.4-gd php8.4-zip php8.4-xml php8.4-common php8.4-curl php8.4-intl
# PHP 8 (Bookworm)
sudo apt install php8.2 php8.2-cli php8.2-mysql php8.2-mbstring php8.2-gd php8.2-zip php8.2-xml php8.2-common php8.2-curl php8.2-intl
# PHP 7 (Bullseye)
sudo apt install php7.4 php7.4-cli php7.4-mysql php7.4-mbstring php7.4-gd php7.4-zip php7.4-xml php7.4-common php7.4-curl php7.4-intl
<br>
===== packages.sury.orgリポジトリの使用 =====
packages.sury.orgリポジトリとは、Ondřej Surý氏が管理する非公式のPHPパッケージリポジトリである。<br>
<br>
* Debian / Ubuntu / Raspberry Pi OS向けに、最新版のPHPや複数バージョンのPHPを提供
* 公式リポジトリよりも新しいバージョンやサポート期間が終了したバージョンも利用可能
* PHP関連の拡張モジュールも豊富に提供
<br>
公式リポジトリに含まれていない新しいPHPバージョンが必要な場合、複数のPHPバージョンを共存させる場合、特定のバージョンのPHPが必要な場合には、packages.sury.orgの利用が有効である。<br>
<br>
まず、lsb-releaseをインストールする。<br>
まず、lsb-releaseをインストールする。<br>
  sudo apt-get install lsb-release
  sudo apt install lsb-release
<br>
<br>
packages.sury.orgからPHPのGPGキーを登録するため、以下のコマンドを実行する。<br>
packages.sury.orgからPHPのGPGキーを登録する。<br>
  wget -q https://packages.sury.org/php/apt.gpg -O- | sudo apt-key add -
  wget -q https://packages.sury.org/php/apt.gpg -O- | sudo apt-key add -
<br>
<br>
93行目: 135行目:
  echo "deb https://packages.sury.org/php/ `lsb_release -cs` main" | sudo tee /etc/apt/sources.list.d/php.list
  echo "deb https://packages.sury.org/php/ `lsb_release -cs` main" | sudo tee /etc/apt/sources.list.d/php.list
<br>
<br>
パッケージリストの更新を行う。<br>
# PHP 8.4
  sudo apt-get update
  sudo apt install php8.4 php8.4-cli php8.4-mysql php8.4-mbstring php8.4-gd php8.4-zip php8.4-xml php8.4-common php8.4-curl php8.4-intl
<br>
   
外部リポジトリからインストール可能なPHPパッケージの情報を確認するため、以下のコマンドを実行する。<br>
  # PHP 8.2
  sudo apt-cache policy php
  sudo apt install php8.2 php8.2-cli php8.2-mysql php8.2-mbstring php8.2-gd php8.2-zip php8.2-xml php8.2-common php8.2-curl php8.2-intl
<br>
PHP 7および主要なPHPモジュールをインストールするため、以下のコマンドを実行する。<br>
  # PHP 7.3
  sudo apt-get install php7.3 php7.3-fpm php7.3-mysql php7.3-mbstring php7.3-gd php7.3-zip php7.3-xml php7.3-common php7.3-curl php7.3-intl php-acpu
   
   
  # PHP 7.4
  # PHP 7.4
  sudo apt-get install php7.4 php7.4-cli php7.4-mysql php7.4-mbstring php7.4-gd php7.4-zip php7.4-xml php7.4-common php7.4-curl php7.4-intl
  sudo apt install php7.4 php7.4-cli php7.4-mysql php7.4-mbstring php7.4-gd php7.4-zip php7.4-xml php7.4-common php7.4-curl php7.4-intl
<br><br>
<br><br>


115行目: 153行目:
  # SUSE
  # SUSE
  sudo zypper install make gcc openssl-devel pam-devel krb5-devel libksba-devel
  sudo zypper install make gcc openssl-devel pam-devel krb5-devel libksba-devel
libksba-devel
<br>
<br>
c-clientライブラリのソースコードをダウンロードする。<br>
c-clientライブラリのソースコードをダウンロードする。<br>
166行目: 202行目:
                     libjpeg62-devel libpng16-devel libwebp-devel libavif-devel libffi-devel              \
                     libjpeg62-devel libpng16-devel libwebp-devel libavif-devel libffi-devel              \
                     libXpm-devel libXft-devel libxslt-devel oniguruma-devel libsodium-devel libtidy-devel \
                     libXpm-devel libXft-devel libxslt-devel oniguruma-devel libsodium-devel libtidy-devel \
                     krb5-server krb5-devel imap imap-devel cyrus-sasl-devel         \
                     krb5-server krb5-devel imap imap-devel cyrus-sasl-devel                               \
                     libedit-devel libcapstone-devel libxslt-devel argon2-devel icu libicu-devel          \
                     libedit-devel libcapstone-devel libxslt-devel argon2-devel icu libicu-devel          \
                     systemd-devel        \
                     systemd-devel        \
177行目: 213行目:
                     lmdb-devel          \  # BtreeベースのDBMSを使用する場合
                     lmdb-devel          \  # BtreeベースのDBMSを使用する場合
                     postgresql-devel        # PostgreSQLを使用する場合
                     postgresql-devel        # PostgreSQLを使用する場合
                    libfbclient-devel      # Firebirdを使用する場合
                     valgrind-devel          # Valgrind (メモリリーク検知機能) を有効にする場合
                     valgrind-devel          # Valgrind (メモリリーク検知機能) を有効にする場合
                     aspell-devel            # GNU ASpellを使用する場合
                     aspell-devel            # GNU ASpellを使用する場合
194行目: 231行目:
               --enable-bcmath --enable-calendar --enable-cgi --enable-cli --enable-exif --enable-ftp --enable-fpm    \
               --enable-bcmath --enable-calendar --enable-cgi --enable-cli --enable-exif --enable-ftp --enable-fpm    \
               --enable-gd --enable-gd-jis-conv --enable-inifile --enable-intl --enable-mbregex --enable-mbstring      \
               --enable-gd --enable-gd-jis-conv --enable-inifile --enable-intl --enable-mbregex --enable-mbstring      \
               --enable-mysqlnd --enable-opcache --enable-phpdbg --enable-phpdbg-debug --enable-sockets --with-enchant \
               --enable-mysqlnd --enable-phpdbg --enable-phpdbg-debug --enable-sockets --with-enchant \
               --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-shmop --enable-soap --enable-zts            \
               --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-shmop --enable-soap --enable-zts            \
              --enable-opcache          \  # PHP 8.4以前
               --with-curl --with-expat -with-freetype --with-gettext --with-gmp --with-iconv --with-jpeg --with-avif --with-ffi \
               --with-curl --with-expat -with-freetype --with-gettext --with-gmp --with-iconv --with-jpeg --with-avif --with-ffi \
               --with-openssl --with-imap-ssl --with-kerberos --with-mhash \
               --with-openssl --with-mhash \
               --with-readline --with-sodium --with-tidy --with-xpm                    \
               --with-readline --with-sodium --with-tidy --with-xpm                    \
               --with-zlib --with-zip --with-libxml --with-xsl --with-ldap --with-pic  \
               --with-zlib --with-zip --with-libxml --with-xsl --with-ldap --with-pic  \
208行目: 246行目:
               --with-pdo-pgsql          \  # PostgresSQLを使用する場合
               --with-pdo-pgsql          \  # PostgresSQLを使用する場合
               --with-lmdb              \  # BtreeベースのDBMSを使用する場合
               --with-lmdb              \  # BtreeベースのDBMSを使用する場合
              --with-pdo-firebird      \  # Firebirdを使用する場合
               --with-pear              \
               --with-pear              \
              --with-pspell            \  # GNU ASpellを有効にする場合
               --with-valgrind          \  # Valgrind (メモリリーク検知機能) を有効にする場合
               --with-valgrind          \  # Valgrind (メモリリーク検知機能) を有効にする場合
              --with-imap-ssl          \  # PHP 8.4以降は不要
              --with-kerberos          \  # PHP 8.4以降は不要
              --with-pspell            \  # PHP 8.4以前 : GNU ASpellを有効にする場合
               --with-imap              \  # SUSE 15.5以前 (IMAPライブラリを使用する場合)
               --with-imap              \  # SUSE 15.5以前 (IMAPライブラリを使用する場合)
               --without-imap            \  # Composer経由で利用できる現代的なメールライブラリが多数存在するため、IMAPライブラリの必要性は低い
               --without-imap            \  # PHP 8.4以降は不要
               --with-mcrypt            \  # PHP 8.3以降は不要
                                          # Composer経由で利用できるメールライブラリが多数存在するため、システムのIMAPライブラリは不要
               --with-mcrypt            \  # PHP 7.2以降は削除されたため不要
               --with-libdir=lib64                              \
               --with-libdir=lib64                              \
               --with-apxs2=/<Apacheのインストールディレクトリ>/bin/apxs \
               --with-apxs2=/<Apacheのインストールディレクトリ>/bin/apxs \
               --with-config-file-path=<php.iniファイルの配置するディレクトリのパス  例: /home/user/PHP/lib> \  # ユーザが指定する場合
               --with-config-file-path=<php.iniファイルの配置するディレクトリのパス  例: /opt/PHP/etc> \  # ユーザが指定する場合
               --with-fpm-user=<PHP-FPMを実行するユーザ名>          \  # オプション
               --with-fpm-user=<PHP-FPMを実行するユーザ名>          \  # オプション
               --with-fpm-group=<PHP-FPMを実行するグループ名>          # オプション
               --with-fpm-group=<PHP-FPMを実行するグループ名>          # オプション
467行目: 509行目:
PHP7をインストールする前に、以下のコマンドを実行してlibargon2をインストールする。<br>
PHP7をインストールする前に、以下のコマンドを実行してlibargon2をインストールする。<br>
  sudo dnf --disablerepo=* --enablerepo=epel install libargon2
  sudo dnf --disablerepo=* --enablerepo=epel install libargon2
<br><br>
== php.iniファイルのパス ==
phpコマンドの-i / --iniオプションを付加する。<br>
php -i | grep php.ini または php --ini | grep php.ini
# 出力例
Configuration File (php.ini) Path => /home/user/InstallSoftware/PHP/PHP_8_3/lib
Loaded Configuration File => /home/user/InstallSoftware/PHP/PHP_8_3/lib/php.ini
<br>
phpinfo関数を使用する。<br>
php -r "echo phpinfo();" | grep "php.ini"
# 出力例
Configuration File (php.ini) Path => /home/user/InstallSoftware/PHP/PHP_8_3/lib
Loaded Configuration File => /home/user/InstallSoftware/PHP/PHP_8_3/lib/php.ini
<br>
<br><br>
<br><br>