GNU/Linux >> Linux の 問題 >  >> Debian

Debian9にPHPをインストールする方法

PHPバージョン7.0に同梱されているDebian9は、まもなくサポートの終了に達し、セキュリティアップデートを受信しなくなります。

このチュートリアルでは、Debian9サーバーにPHP7.2をインストールする手順を説明します。また、PHPを実行するようにApacheとNginxを構成する方法も示します。

前提条件#

このチュートリアルを開始する前に、sudo権限を持つユーザーとしてログインしていることを確認してください。

Debian9へのPHP7.2のインストール#

次の手順では、OndrejSuryリポジトリを使用してPHP7.2をインストールする方法について説明します。

  1. まず、aptを更新します パッケージリストを作成し、HTTPS経由で新しいリポジトリを追加するために必要な依存関係をインストールします:

    sudo apt updatesudo apt install apt-transport-https ca-certificates curl software-properties-common
  2. 次のcurlコマンドを使用して、リポジトリのGPGキーをインポートすることから始めます。

    curl -fsSL https://packages.sury.org/php/apt.gpg | sudo apt-key add -

    次のように入力して、ondrejのリポジトリをシステムのソフトウェアリポジトリリストに追加します。

    sudo add-apt-repository "deb https://packages.sury.org/php/ $(lsb_release -cs) main"
  3. システムでondrejのリポジトリが有効になっているので、使用するバージョンを指定してPHPをインストールできます。

    sudo apt updatesudo apt install php7.2-common php7.2-cli
  4. PHPバージョンを出力する次のコマンドを実行して、インストールを確認します。

    php -v
    PHP 7.2.8-1+0~20180725124257.2+stretch~1.gbp571e56 (cli) (built: Jul 25 2018 12:43:00) ( NTS )
    Copyright (c) 1997-2018 The PHP Group
    Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
        with Zend OPcache v7.2.8-1+0~20180725124257.2+stretch~1.gbp571e56, Copyright (c) 1999-2018, by Zend Technologies

PHPを実行するためのApacheの設定#

WebサーバーとしてApacheを使用してPHPとApachePHPモジュールをインストールしている場合は、次のコマンドを実行します。

sudo apt install php7.2 libapache2-mod-php

パッケージをインストールしてphp7.2モジュールを有効にしたら、Apacheサービスを再起動するだけです。

sudo systemctl restart apache2

PHPを実行するためのNginxの構成#

Apacheとは異なり、NginxにはPHPファイルの処理のサポートが組み込まれていないため、PHPファイルを処理するPHP FPM(「fastCGIプロセスマネージャー」)などの別のアプリケーションをインストールする必要があります。

PHPおよびPHPFPMパッケージをインストールするには、次のコマンドを実行します。

sudo apt install php7.2-fpm

パッケージがインストールされると、PHPFPMサービスが自動的に開始されます。サービスステータスは次の方法で確認できます:

systemctl status php7.2-fpm
● php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager
   Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2018-08-30 21:06:53 UTC; 1min 4s ago
     Docs: man:php-fpm7.2(8)
 Main PID: 16791 (php-fpm7.2)
   Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
   CGroup: /system.slice/php7.2-fpm.service
           ├─16791 php-fpm: master process (/etc/php/7.2/fpm/php-fpm.conf)
           ├─16792 php-fpm: pool www
           └─16793 php-fpm: pool www

これで、ドメインNginxサーバーブロックを編集し、次の行を追加して、NginxがPHPファイルを処理できるようになります。

server {

    # . . . other code

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;
    }
}

新しい構成が有効になるNginxサービスを再起動します:

sudo systemctl restart nginx

PHP拡張機能のインストール#

追加の拡張機能をインストールすることで、PHPのコア機能を拡張できます。 PHP拡張機能はパッケージとして利用可能であり、次のコマンドで簡単にインストールできます。

sudo apt install php-[extname]

たとえば、MySQLおよびGD PHP拡張機能をインストールする場合は、次のコマンドを実行する必要があります。

sudo apt install php7.2-mysql php7.2-gd

新しいPHP拡張機能をインストールした後、セットアップに応じて、ApacheまたはPHPFPMサービスを再起動することを忘れないでください。

PHP処理のテスト#

WebサーバーがPHP処理用に適切に構成されているかどうかをテストするには、/var/www/html内にinfo.phpという名前の新しいファイルを作成します。 次のコードのディレクトリ:

/var/www/html/info.php
<?php

phpinfo();

ファイルを保存し、選択したブラウザを開いて、http://your_server_ip/info.phpにアクセスします。

phpinfo 関数は、以下の画像に示すように、PHP構成に関する情報を出力します。


Debian
  1. Debian10にPHP7.4をインストールする方法

  2. Debian11にPHPをインストールする方法

  3. Debian9にPHP7.2をインストールする方法

  1. PHP 7.4 / 7.3 / 7.2/7.1をDebian10/Debian9にインストールする方法

  2. Debian11にPHP8.0をインストールする方法

  3. PHP8.0をDebian10/Debian9にインストールする方法

  1. PHPComposerをDebian8にインストールする方法

  2. PHP8をDebian10にインストールする方法

  3. Debian 10 に PHP 7.3 をインストールする方法