1.下载源代码php
2.添加epel 源mysql
3.安装依赖nginx
yum install gcc bison bison-devel zlib-devel libmcrypt-devel mcrypt mhash-devel openssl-devel libxml2-devel libcurl-devel bzip2-devel readline-devel libedit-devel sqlite-devel gmp-devel libjpeg-devel libpng-develgit
4.建立用户web
# groupadd www
# useradd -g www -s /sbin/nologin -M www
5.编译安装sql
收集的比较全的编译选项:shell
./configure \ --prefix=/usr/local/php7 \ --with-config-file-path=/usr/local/php7/etc \ --enable-inline-optimization \ --disable-debug \ --disable-rpath \ --enable-shared \ --enable-opcache \ --enable-fpm \ --with-fpm-user=www \ --with-fpm-group=www \ --with-mysql=mysqlnd \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --with-gettext \ --enable-mbstring \ --with-iconv \ --with-mcrypt \ --with-mhash \ --with-openssl \ --enable-bcmath \ --enable-soap \ --with-libxml-dir \ --enable-pcntl \ --enable-shmop \ --enable-sysvmsg \ --enable-sysvsem \ --enable-sysvshm \ --enable-sockets \ --enable-calendar \ --enable-wddx \ --with-gmp \ --with-curl \ --with-zlib \ --enable-zip \ --with-bz2 \ --with-gd \ --enable-gd-native-ttf \ --enable-exif \ --with-readline
# make -j8
# make install
配置文件:ubuntu
# cp php.ini-development /usr/local/php56/etc/php.ini
php-fpm 服务vim
# cp /usr/local/php56/etc/php-fpm.conf.default /usr/local/php56/etc/php-fpm.conf
# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm56
# chmod +x /etc/init.d/php-fpm56
启动 php-fpmcentos
# service php-fpm56 start Starting php-fpm done
php-fpm 可用参数 start|stop|force-quit|restart|reload|status
编辑 ~/.bash_profile,将:
PATH=$PATH:$HOME/bin 改成: PATH=$PATH:$HOME/bin:/usr/local/php56/bin
使 PHP 环境变量生效:
# . ~/.bash_profile
查看看 PHP 版本
# php -v
################来源:http://www.timelog.xyz/tmv/20##############
编译安装的脚本是我以前写的unmp.sh :http://git.oschina.net/fallBirds/tltw-lnmp-shell
安装过程和5版的无疑,很是简单。须要注意的是,编译参数会少了 --with-mysql 。由于PHP7 mysql的驱动函数再也不支持。之后都是预处理的天下!除了猪队友,之后应该不会再有注入漏洞的了。
编译过程理论上来讲不会出现很大的问题。在这里我就不说了,你们具体看脚本吧。编译完成后,要配置PHP-FPM。 在PHP7中,PHP-FPM的配置文件存放进行了稍微的调整。按照上面提供的脚本,你会发现直接执行 /opt/php/sbin/PHP-FPM会报以下错误:
root@ubuntu:/opt/php7# /opt/php7/sbin/php-fpm [22-Sep-2015 14:29:00] WARNING: Nothing matches the include pattern '/opt/php7/etc/php-fpm.d/*.conf' from /opt/php7/etc/php-fpm.conf at line 125. [22-Sep-2015 14:29:00] ERROR: No pool defined. at least one pool section must be specified in config file [22-Sep-2015 14:29:00] ERROR: failed to post process the configuration [22-Sep-2015 14:29:00] ERROR: FPM initialization failed
大概意思就是说找不到 opt/php7/etc/php-fpm.d/目录下的配置文件。 进入里面的目录,会有一个www.conf.default文件。执行下面命名复制一份
root@ubuntu:/opt/php7/etc/php-fpm.d/# cp www.conf
复制好以后,编辑该文件
root@ubuntu:/opt/php7/etc/php-fpm.d/# nano www.conf
定位到里面文件的 user = nobody 和 group = nobody ,调整为 www-data。这一步和5版编译安装同样。最后启动PHP-FPM
root@ubuntu:~# /opt/php7/sbin/php-fpm root@ubuntu:~#
没报错,web访问看phpinfo()
+++++++++++++++++++++error+++++++++++++++++++++++++
编译安装php报错PHP configure: error: mcrypt.h not found. Please reinstall libmcrypt. 缘由以及解决办法:
缘由centos源不能安装libmcrypt-devel,因为版权的缘由没有自带mcrypt的包。有
方法1:
一、安装第三方yum源
能够scp将阿里云的文件CentOS-Base.repo直接拷贝过来。
二、使用yum命令安装
yum install php-mcrypt libmcrypt libmcrypt-devel
方法2:
使用php mcrypt 前必须先安装Libmcrypt
libmcrypt源码安装方法:
wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz
tar -zxvf libmcrypt-2.5.7.tar.gz
cd libmcrypt-2.5.7
./configure –prefix=/usr/local
make
make install
再去编译安装就能够了。若有其余报错,请根据具体报错解决。
在对php进行安装的过程当中出现以下错误:
一、报错信息:
1 |
|
二、平台介绍:
1 2 3 4 5 6 |
|
三、解决办法:
1 2 3 4 |
|