1 php ユーザーとユーザー グループを作成し、GitHub から php7 ソース コードをダウンロードします
まず、ログイン権限のない php という名前のユーザーと php という名前のユーザー グループを作成し、GitHub に移動して php7 ソース コード パッケージをダウンロードします。
#######新しい php ユーザーと php グループを作成します
[root@typecodes ~]# groupadd -r php && useradd -r -g php -s /bin/false -d /usr/local/php7 -M php
######GitHub から php7 インストール パッケージをダウンロードします
[root@typecodes ~]# wget -c --no-check-certificate -O php7-src-master.zip https://github.com/ php/ php-src/archive/master.zip
######php7 パッケージの解凍を開始します
[root@typecodes ~]# unzip -q php7-src-master.zip && cd php-src-master
# ### #php7 のコンパイルに必要な依存パッケージをインストールします
[root@typecodes php-src-master]# yum -y install libxml2 libxml2-devel openssl openssl-develcurl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt- devel
2 PHP7のコンパイルパラメータの設定
準備が完了したら、php7のインストール内容の正式な設定が始まります。まず、以下のバックスラッシュ「」の後に追加されたコメント テキストを削除する必要があることに注意してください。 ! !
######設定ファイルの生成を開始します
[root@typecodes php-src-master]# ./buildconf
buildconf: インストールを確認しています...
buildconf: autoconf version 2.69 (ok)
aclocal.m4を再構築しています
再構築Configurebuilding main/pHP_config.h.in
##### 構成の開始
[root@typecodes pHP-SRC-MASTER]#./configure
🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 🎜 -」ディレクトリ]🎜--exec-prefix=/usr/local/php 7 🎜--bindir=/usr/local/php7/bin 🎜--sbindir=/usr/local/php7/sbin 🎜--ownedir=/usr/local /php7/include 🎜--libdir=/usr/local/php7/lib/php 🎜--mandir=/usr/local /php7/php/man --with-iconv 🎜--with-zlib 🎜--enable-zip 🎜--enable-inline-optimization 🎜--disable-debug 🎜--disable-rpath 🎜--enable-shared 🎜--enable-xml 🎜 --enable-bcmath 🎜--enable-shmop 🎜--enable-sysvsem 🎜--enable-mbregex 🎜--enable-mbstring 🎜--enable-ftp 🎜--enable-gd-native-ttf 🎜--enable- pcntl 🎜--enable-sockets 🎜--with-xmlrpc 🎜--enable-soap 🎜--without-pear 🎜--with-gettext 🎜--enable-session 🎜--with-curl Curl 拡張機能を許可する] 🎜-with -JPEG-DIR 🎜-With-FreeType-DIR 🎜 --Nable -opcache = No [OPCACHE キャッシュを使用する] 🎜 --nable-FPM 🎜-WITH-FPM-User = nginx [php-fpm ユーザー]🎜--with- fpm-group=nginx /usr/local/php7 --exec-prefix=/usr/local/php7 --bin を使用するdir=/usr/local/php7/bin --sbindir=/usr/local/php7/sbin -- Includedir=/usr/local /php7/include --libdir=/usr/local/php7/lib/php --mandir=/usr/local/php7/php/man --with-config-file-path=/usr /local/php7/etc
--with-mysql-sock=/var/run/mysql/mysql.sock --with-mcrypt=/usr/include --with-mhash --with-openssl --with-mysqli=shared,mysqlnd --with -pdo-mysql=shared,mysqlnd --with-gd --with-iconv --with-zlib --enable-zip --enable-inline-optimization --disable-debug --disable-rpath
--enable-shared --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-mbregex --enable-mbstring --enable-ftp --enable-gd-native-ttf - -enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --without-pear --with-gettext --enable-session --with-curl
--with-jpeg-dir --with-freetype-dir --enable-opcache=no --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --without-gdbm - -disable-fileinfo🎜エラー メッセージ:configure: error: mcrypt.h not found. libmcrypt を再インストールしてください🎜解決策: libmcrypt-2.5.8.tar.gz をダウンロードしてコンパイルしてインストールします🎜ダウンロード アドレス: http://sourceforge.net /projects/mcrypt/files/Libmcrypt/🎜 libmcrypt を再コンパイルする場合は、インストール ディレクトリを覚えてから、php 項目 --with-mcrypt=your libmcrypt インストール ディレクトリをコンパイルしてください🎜./configure --prefix=/usr/local/php7 --exec-prefix=/usr/local/php7 --bindir=/usr/local/php7/bin --sbindir=/usr/local/php7/sbin - -builtir=/usr/local/php7/include --libdir=/usr/local/php7/lib/php --mandir=/usr/local/php7/php/man --with-config-file-path=/ usr/local/php7/etc
--with-mysql-sock=/var/run/mysql/mysql.sock --with-mcrypt=/usr/local/libmcrytp/ --with-mhash --with-openssl --with-mysqli=mysqlnd -- with-pdo-mysql=mysqlnd --with-gd --with-iconv --with-zlib --enable-inline-optimization --disable-debug --disable-rpath --enable-shared
--enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-mbregex --enable-mbstring --enable-ftp --enable-gd-native-ttf --enable-pcntl - -enable-sockets --with-xmlrpc --enable-soap --without-pear --with-gettext --enable-session --with-curl --with-jpeg-dir
--with-freetype-dir --enable-opcache --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --without-gdbm --disable-fileinfo
编译時遇问题: このシステムで struct flock を定義する方法がわかりません。 --enable-opcache=no を設定してください。 /etc/ld.so.conf を追加/usr/local/lib、在行ldconfig -v
ヒント:我在/usr/lib 看到libmysqlclient.so 所以在编辑/etc/ld.so.conf的時候、以下に、このようなものが存在するかどうかを見てください。
3 は PHP7 のインストールを開始します。MySQL のインストールには大量の CPU と内部メモリが消費され、PHP7 のインストールには多くの時間がかかり、全体の手順は約 1 時間かかります。 --enable-opcache=no设のためno、去掉了--enable-zip、配置インストール完了後、必要单独握这两个作為扩展インストール
[root@typecodes php-src-master]# make clean && make && make install
如果遇到错误可参考:http://blog.chinaunix.net/uid-20776139-id-5421615.html
4 手順:make test コマンドの実行测试
これは必須ではない操作手順です。 、make test コマンドを実行します。後の PHP7 インストール目録
必要と MySQL が通信するため、特に PHP7 インストール後の lib 展開目録 (/usr/local/php7/lib/php/extensions/no-debug-non-zts-20141001/) をご覧ください。少なくとも、mysqli.so、pdo_mysql.so の 2 つの動作ファイルが存在することを確認する必要があります。
6 PHP7 の構成ファイル php.ini、php-fpm.conf、www.conf および php-fpm の設定を開始します。
後で使用できるようになります。の構成文件 PHP7 の構成目录(/usr/local/php7/etc/)、推荐使用《PHP7 中php.ini、php-fpm および www.conf の構成》文中整理された 3 つの PHP7 構成文件とphp -fpm サービス制御スクリプト。
####### 方法 1: 直接使用した後、処理が行われない構成
[root@typecodes php-src-master]# cp php.ini-production /usr/local/ php7/etc/php.ini
[root@typecodes php-src-master]# cp /php-src-master/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[ root@typecodes php-src-master]# cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf
[root@typecodes php-src- master]# cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf
#####方法二:https://typecodes.com/web/php7configure.html文中の構成を使用します
[root@typecodes php-src-master]# mv ~/php.ini /usr/local/php7/etc/php.ini && mv ~/php-fpm /etc/init.d/php-fpm
[root@typecodes php-src-master]# mv ~/php-fpm.conf /usr/local/php7/etc/php-fpm。 conf && mv ~/www.conf /usr/local/php7/etc/php-fpm.d/www.conf
7 php の環境变量を追加
php 编译生成された bin 目录を現在の Linux システムの環境变量に追加しました
[root@typecodes ~]# echo -e 'nexport PATH=/usr/local/php7/bin:/usr/local/php7/sbin:$PATHn' >> /etc/profile && source /etc/profile
8 設置PHP日志目录とphp-fpm进程文件(php-fpm.sock)目录
その中、設置php-fpm进程目录の用户および用户組はnginx,并创建php会議セッションの目录。
#######PHPログディレクトリとphp-fpmの実行プロセスIDファイル(php-fpm.sock)のディレクトリを設定
[root@typecodes ~]# mkdir -p /var/log/php -fpm/ && mkdir -p /var/run/php-fpm && cd /var/run/ && chown -R nginx:nginx php-fpm
#####セッションのディレクトリ構成を変更します
[root @typecodes etc]# mkdir -p /var/lib/php/session
[root@typecodes etc]# chown -R nginx:nginx /var/lib/php
9 PHP の起動を設定し、設定ファイルが正しいかテストします
######設定 起動時に自動的に開始され、ホストの sysV サービスに追加されます
[root@typecodes php-src-master]# chmod +x /etc/init.d/php-fpm
[root@typecodes php- src-master]# chkconfig --add php-fpm
[root@typecodes php-src-master]# chkconfig php-fpm on
######PHP 設定ファイルが正しく合法であるかどうかをテストします
[root@ typecodes sbin]# php-fpm -t
[03-May-2015 17:50:04] 注意: 設定ファイル /usr/local/php7/etc/php-fpm.conf テストは成功しました
10 php サービスを開始します
以上の操作が完了すると、php Servedが正式に利用できるようになります。 php プロセス サービスを開始するコマンドは次のとおりです:
[root@typecodes sbin]# service php-fpm start
php-fpm の開始完了
11 opcache をインストールします
チュートリアル: http://blog.jjonline.cn/linux/ 135.html
チュートリアル: http://blog.ich8.com/post/4142
チュートリアル: http://my.oschina.net/u/919580/blog/406900 実践により、これが利用可能であることが証明されました
インストール:
Linux
Zend Opcache (pecl バージョン) をインストールします:
eaccelerator、xcache、apc を削除します:
yum delete php-eaccelerator php-xcache php-apcu
使用しない場合はスキップします。
システムをアップグレードします:
yum update
Zend Opcache (pecl バージョン) をインストールします
yum install php-pecl-zendopcache PS: ただし、php-pecl-zendopcache 拡張機能はまだ centos7 で見つからないため、以下を続行できません
生成インストール中、opcache 設定ファイルはデフォルトの /etc/php.d ディレクトリにあります:
opcache-default.blacklist
opcache.ini
この設定ファイルは基本的に README の推奨設定を使用しており、変更する必要があるのはいくつかの場所のみです。変更されました。
vi /etc/php.d/opcache.ini
推奨構成を次のように変更して保存するだけです:
opcache.memory_c>opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown= 1
opcache.enable_cli=1
php.ini 設定を変更する必要はありません。有効にするために Apache サービスを再起動します:
service httpd restart
正しく開始されているかどうかを確認します:
php -v
出力結果は次のようになります:
PHP 7 (cli) (built: Apr 11 2013 11:04:35)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Zend OPcache v7.0.1 を使用したテクノロジー
、著作権 (c) 1999-2013、Zend Technologies 作成
上記では、CentOS 71 での PHP7 のコンパイルとインストールについて、関連する側面も含めて紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。