ホームページ  >  記事  >  バックエンド開発  >  Centos での PHP5 から PHP7 へのアップグレード

Centos での PHP5 から PHP7 へのアップグレード

angryTom
angryTom転載
2019-10-16 11:49:173028ブラウズ

Centos での PHP5 から PHP7 へのアップグレード

1. まず、PHP7 インストール パッケージをダウンロードします。

wget http://am1.php を使用します。 .net/distributions/php-7.2.0.tar.bz2、またはダウンロードに直接アクセスし、Linux サーバーに ftp でアクセスします

2。圧縮パッケージを解凍します

tar –xjf php-7.0.2.tar.bz2

3. フォルダーに入り、cd php-7.0.2 を実行し、必要な依存関係ツール

yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel curl curl-devel openssl openssl-devel这里主要是升级,一般在php5都安装了,所以这一步可以省略

4 をインストールします。いくつかの依存関係をインストールします (インストールされている場合、後で生成することはできません。Apache で使用される libphp7.so ファイル)

yum -y install perl
yum –y install perl-devel
yum -y install httpd-devel
find /usr  -name apxs 取得所用路径,后面编译时用到。

5.コンパイルの準備

./configure --prefix=/usr/local/php7 --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath -enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip --enable-pcntl --with-curl --with-fpm-user=nginx --enable-ftp --enable-session --enable-xml --with-apxs2=/usr/bin/apxs
**注意:其中的 –enable-gd-native-ttf 可以不安装,处理图形用的,如果有需求可以以后以扩展形式装

–with-apxs2=/usr/bin/apxs 次のパスを手順 4 で取得したパスに変更します

–prefix=/usr/local/php7 php5** との競合を避けるために、php7 フォルダーに個別にインストールします**

6. コンパイル

make

このステップでは、多くの問題が発生する傾向があります。たとえば、遭遇した場合: undefine。 。 。 。

/ext/cli./php …

Openssl

およびその他のエラーを確認し、関連するモジュールがインストールされていることを確認します。通常は、以前のコンパイルをクリアして、関連するモジュールを削除します。

make clean
rm –rf /usr/local/php7

を再コンパイルすると、通常は問題が解決します。

その他のエラーについては、次のブログを参照してください:

http://www.cnblogs.com/sweetXiaoma/p/5855732.html

http: //www.linuxidc.com/Linux/2017-08/146220.htm

Linux ディストリビューションは多すぎて、各サーバーの環境構成も異なります。異なるため、多くの奇妙な問題に遭遇するでしょう。

7. インストール

Make install

8. 設定ファイルの準備

cp php.ini-developement /etc/php.ini   //根据实际情况,可以使用production或者development默认配置
cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf
cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf

9. Apache 設定を変更する必要がありますファイル

Vi /etc/httpd/conf/httpd.conf LoadModule php7_module modules/libphp7.so を見つけます。手動で追加していない場合は、

Change LoadModule php5_module modules/libphp5.コメントアウト

cp /etc/httpd/conf.d/php.conf /etc/httpd/conf.d/php.conf_5

Vi /etc/httpd/conf.d/ php .conf

次のように変更します: (php5 に関連するものをコメントアウトし、php7 関連モジュールに変更します)

<IfModule prefork.c>
  LoadModule php7_module modules/libphp7.so
</IfModule>
<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>
DirectoryIndex index.php
# mod_php options
<IfModule  mod_php7.c>
    <FilesMatch \.php$>
        SetHandler application/x-httpd-php
</FilesMatch>
    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"
</IfModule>

10. Apache サーバーを再起動します

service httpd restart
PHP 関連の知識については、

PHP 中国語 Web サイト

をご覧ください。

以上がCentos での PHP5 から PHP7 へのアップグレードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。