web-dev-qa-db-ja.com

php7.2を使用するようにnginxを作成する

PHPをバージョン7.0.27からugintu16.04の7.2にnginxでアップグレードしました。

PHP 7.0からPHP 7.2-サーバーのアップグレード方法

ターミナルでphp -vを実行すると、次のことがわかります。

PHP 7.2.2-3+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Feb  6 2018 16:11:23) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.2-3+ubuntu16.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies
with Xdebug v2.6.0, Copyright (c) 2002-2018, by Derick Rethans

しかし、ブラウザでphpinfo()をエコーすると、PHPの古いバージョンが表示されます。

PHP Version 7.0.27-1+ubuntu16.04.1+deb.sury.org+1

これは、nginxがPHP7.2を使用していないことを意味します。助けてください。

前もって感謝します。

4
bhattraideb

トーマスの答えを補強するために、これはあなたが変更する必要があるファイルです:

Sudo nano /etc/nginx/sites-available/default

または、1つのnginxで複数のサイトを実行している場合:

Sudo nano /etc/nginx/sites-available/your_site_name

この部分を変更します

server {

    ...

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

    ...
}

php7.0-fpm.sockからphp7.2-fpm.sock

4
Arthur Tarasov

php7.2-fpmをセットアップするとき、PHPリクエストをルーティングする場所を実際に指す場所についてNGINX構成を調整する必要もあります。

nginxには、おそらくPHP 7.0のfastcgi_pass unix:/run/php/php7.0-fpm.sock;があります。これをfastcgi_pass unix:/run/php/php7.2-fpm.sock;に更新し、php7.2-fpmもインストールする必要があります。

そして、設定を更新するためにnginxを再起動すると、PHP 7.2で適切に動作するはずです。

3
Thomas Ward