1。首先配置编译环境yum-yupdate&&yum-yupgradeyumgroupinstall"开发工具"yum-yinstallgccgcc-c++pcreopensslgd-devel*zlib-develpcre-devellibxml2-develcurl-devel下载安装libmcrypt地址:http://sourceforge.net/projec...(已下载)编译安装tar-zxvflibmcrypt-2.5.8.tar.gzcdlibmcrypt-2.5.8./configuremake&&makeinstalleditvim/etc/ld.so.conf最后一行添加/usr/local/lib,执行:ldconfig编译安装过程php源码包wgethttp://cn2.php.net/distributi...tarzxvfphp-7.0.14.tar.gz-C/usr/src/cd/usr/src/phpxxxx编译安装注意:把路径换成自己的。./configure--prefix=/usr/local/php7--exec-prefix=/usr/local/php7--bindir=/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=/tmp/mysql.sock--with-mcrypt=/usr/include--with-mhash--with-openssl--with-mysql=shared,mysqlnd--with-mysqli=shared,mysqlnd--with-pdo-mysql=shared,mysqlnd--with-gd--with-iconv--with-zlib--enable-zip--enable-inline-optimization--enable-sockets--enable-soap--enable-session--with-curl--enable-opcache--enable-fpm--enable-fastcgi--with-fpm-user=www--with-fpm-group=www--disable-fileinfo其他模块可以用./configure--help查看configure的正确编写语言&&安装makeclean&&make&&makeinstall设置PHP7的配置文件cp/usr/local/php7/etc/php-fpm.conf.default/usr/local/php7/etc/php-fpm.confcp/usr/local/php7/etc/php-fpm.d/www.conf.default/usr/local/php7/etc/php-fpm.d/www.confstart/usr/local/php7/sbin/php-fpmPhp-fpmstartecho"/usr/local/php7/sbin/php-fpmstart">>/etc/rc。localphp源码安装目录在/usr/local/php7中添加PHP环境变量echo-e'\nexportPATH=/usr/local/php7/bin:/usr/local/php7/sbin:$PATH\n'>>/etc/profile&&source/etc/profile查看编译成功的PHP7安装目录由于需要和MySQL通信,所以需要查看PHP7安装后的lib扩展库目录(/usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/)需要保证至少有两个动态库文件,mysqli.so和pdo_mysql.so,如下图。[root@localhostphp-7.0.0]#ls-lrt/usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/php7目录php7目录开始设置PHP7配置文件php.ini、php-fpm.conf、www.conf和php-fpm脚本可以和编译好的配置文件一起复制到PHP7的配置目录(/usr/local/php7/etc/)。推荐使用github中的配置。本配置来自《PHP7中php.ini、php-fpm和www.conf的配置》方法一:直接使用编译后未优化的配置[root@localhostphp-7.0.0]#cpphp.ini-production/usr/local/php7/etc/php.ini方法二:使用配置在https://github.com/lizer2014/...[root@localhostphp-7.0.0]#mv~/php.ini/usr/local/php7/etc/php.ini&&mv~/php-fpm/etc/init.d/php-fpm[root@localhostphp-7.0.0]#mv~/php-fpm.conf/usr/local/php7/etc/php-fpm.conf&&mv~/www.conf/usr/local/php7/etc/php-fpm.d/www.conf注意:需要修改php.ini配置中的参数,将extension_dir改为自己的extension_dir="/usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/》其中,/etc/init.d中start函数的daemon进程前必须有make/var/run/php-fpm命令/php-fpm,否则重启服务器会导致启动失败。nginx中的配置也有这个问题。添加php的环境变量[root@localhostphp-7.0.0]#echo-e'nexportPATH=/usr/local/php7/bin:/usr/local/php7/sbin:$PATHn'>>/etc/profile&&source/etc/profile设置php日志目录和php-fpm进程文件(php-fpm.sock)目录其中,设置php-fpm进程目录的用户和用户组对于nginx,并创建一个phpsession会话目录设置PHP日志目录和php-fpm运行进程ID文件(php-fpm.sock)目录[root@localhostphp-7.0.0]#groupadd-rnginx&&useradd-r-gnginx-s/bin/false-Mnginx[root@localhostphp-7.0.0]#mkdir-p/var/log/php-fpm/&&mkdir-p/var/run/php-fpm&&cd/var/run/&&chown-Rnginx:nginxphp-fpm修改会话目录配置[root@localhostrun]#mkdir-p/var/lib/php/session[root@localhostrun]#chown-Rnginx:nginx/var/lib/php设置PHP启动并测试配置文件是否正确配置自动启动,添加到宿主机sysV服务[root@localhostrun]#chmod+x/etc/init.d/php-fpm[root@localhostrun]#chkconfig--addphp-fpm[root@localhostrun]#chkconfigphp-fpmon测试PHP配置文件是否正确合法[root@localhostrun]#php-fpm-t[05-Dec-201517:33:03]NOTICE:配置文件/usr/local/php7/etc/php-fpm.conf测试成功启动php服务完成以上操作后,就可以正式使用php服务了启动php进程服务的命令如下:[root@localhostinit.d]#servicephp-fpmstartStartingphp-fpmdone然后可以使用命令ps-aux|grepphp查看是否成功(图中php-fpm进程数和进程数Usernginx分别由www.conf中pm.start_servers和user的值决定)修改Nginx配置,使用PHP7location/{root/var/www/html/;indexindex.htmlindex.htmindex.php;}location~.*.(php|php7)?${root/var/www/html/;fastcgi_pass127.0.0.1:9000;fastcgi_indexindex.php;fastcgi_paramHTTPS开启;fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;包括fastcgi_params;包括fastcgi.conf;##}如果出现错误“SQLSTATE[HY000][2002]Nosuchfileordirectory”将localhost更改为127.0.0.1$host='localhost';//改为127.0.0.1$database='demo';$用户名='root';$密码='管理员';
