安装前的准备
- 安装gcc和g++环境(编译需要用到,已有的话可以跳过)
yum -y install gcc gcc-c++ kernel-devel //安装gcc、c++编译器以及内核文件
- 安装一些php的依赖包
yum -y install libxml2
yum -y install libxml2-devel
yum -y install openssl
yum -y install openssl-devel
yum -y install curl
yum -y install curl-devel
yum -y install libjpeg
yum -y install libjpeg-devel
yum -y install libpng
yum -y install libpng-devel
yum -y install freetype
yum -y install freetype-devel
yum -y install pcre
yum -y install pcre-devel
yum -y install libxslt
yum -y install libxslt-devel
yum -y install bzip2
yum -y install bzip2-devel
下载安装包
- 通过php网站 https://www.php.net/downloads 选择合适的版本连接
wget https://www.php.net/distributions/php-7.0.0.tar.gz
tar -zxvf php-7.0.0.tar.gz && cd php-7.0.0
- github
git clone https://github.com/php/php-src.git
git checkout php-7.0.0
安装
./configure --prefix=/usr/local/php --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-jpeg-dir --with-xmlrpc --with-xsl --with-zlib --with-bz2 --with-mhash --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --enable-zip
实际上可以配置项还有很多,可以通过 ./configure --help | less 查看
mkake && make install
php安装位置就是上边指定的/usr/local/php,下边手动复制配置文件
cp php.ini-development /usr/local/php/lib/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp sapi/fpm/php-fpm /usr/local/bin
到此就安装完成了
安装event扩展
- 安装libevent
// libevent 是一个库,event扩展依赖这个库并实现其功能!其实有php-libevent扩展,但是不知道什么原因,并不支持php7
wget -c https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz
tar -zxvf libevent-2.1.8-stable.tar.gz
cd libevent-2.1.8
./configure --prefix=/usr/local/libevent
make && make install
- 安装sockets扩展(因为上边编译php时已经开启了,所以跳过)
- 安装event
wget -c http://pecl.php.net/get/event-2.3.0.tgz
tar -zxvf event-2.3.0.tar.tgz
cd event-2.3.0.tar
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-event-libevent-dir=/usr/local/libevent/
make && make install
echo extension = event.so >> /usr/local/php7/etc/php.ini
/usr/localphp/bin/php -m