Linux下安装PHP7
事先升级gcc4.8,然后安装PHP7,安装步骤参考:CentOS安装PHP7
1、Linux下编译的php没有php.ini
解决办法:从源代码目录中复制php.ini-development或php.ini-production到php.ini目录
2、安装zlib扩展
cd /usr/local/src/php-7.0.10/ext/zlib
cp config0.m4 config.m4
/usr/local/php-7.0.10/bin/phpize
./configure --with-php-config=/usr/local/php-7.0.10/bin/php-config --with-zlib=/usr
make & make install & make clean
sudo vi /usr/local/php-7.0.10/etc/php.ini //修改PHP配置文件
extension=zlib.so //添加这一行,重启PHP服务
参考:phpize编译安装PHP zlib库扩展模块
3、安装gd扩展
sudo yum install php-gd2 png jpeg freetype //YUM安装扩展
cd /usr/local/src/php-7.0.10/ext/gd //这里的php-7.0.10/文件夹是我当初解压PHP安装包得到的。
/usr/local/php-7.0.10/bin/phpize
./configure --with-php-config=/usr/local/php-7.0.10/bin/php-config --with-png-dir --with-freetype-dir --with-jpeg-dir --with-gd
sudo make
make install
sudo vi /usr/local/php-7.0.10/etc/php.ini //修改PHP配置文件
extension=gd.so //添加这一行,重启PHP服务
参考:LINUX下用PHPIZE安装PHP GD扩展
4、安装mysqli扩展
cd /usr/local/src/php-7.0.10/ext/mysqli//这里的php-7.0.10/文件夹是我当初解压PHP安装包得到的。
cp /usr/local/mysql/bin/mysql_config /usr/bin/mysql_config
/usr/local/php-7.0.10/bin/phpize
./configure --with-php-config=/usr/local/php-7.0.10/bin/php-config --with-mysql-config=/usr/bin/mysql_config --with-pdo-mysql=/usr/local/mysql --enable-pdo=shared
sudo make
make install
sudo vi /usr/local/php-7.0.10/etc/php.ini //修改PHP配置文件
extension=mysqli.so //添加这一行,重启PHP服务
参考:PHP独立编译安装扩展(mysqli,pdo-mysql)
5、安装pdo_mysql扩展
cd /usr/local/src/php-7.0.10/ext/pdo_mysql //这里的php-7.0.10/文件夹是我当初解压PHP安装包得到的。
/usr/local/php-7.0.10/bin/phpize
./configure --with-php-config=/usr/local/php-7.0.10/bin/php-config --with-mysql-config=/usr/bin/mysql_config --with-pdo-mysql=/usr/local/mysql --enable-pdo=shared
sudo make
make install
sudo vi /usr/local/php-7.0.10/etc/php.ini //修改PHP配置文件
extension=pdo_mysql.so //添加这一行,重启PHP服务
参考:PHP独立编译安装扩展(mysqli,pdo-mysql)
6、安装opcache扩展
cd /usr/local/src/php-7.0.10/ext/opcache
/usr/local/php-7.0.10/bin/phpize
cp config0.m4 config.m4
./configure --with-php-config=/usr/local/php-7.0.10/bin/php-config
make & make install & make clean
sudo vi /usr/local/php-7.0.10/etc/php.ini //修改PHP配置文件
//添加以下这些行,重启PHP服务
zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=1"
opcache.file_cache=/tmp
opcache.validate_timestamps=1 //生产环境中配置为0
opcache.revalidate_freq=0 //检查脚本时间戳是否有更新时间
opcache.memory_consumption=64 //Opcache的共享内存大小,以M为单位
opcache.interned_strings_buffer=16 //用来存储临时字符串的内存大小,以M为单位
opcache.max_accelerated_files=4000 //Opcache哈希表可以存储的脚本文件数量上限
opcache.fast_shutdown=1 //使用快速停止续发事件
参考:PHP5.5 Zend Opcache安装配置教程
7、安装redis扩展
Redis扩展:http://pecl.php.net/package/redis
wget http://pecl.php.net/get/redis-3.0.0.tgz
tar -xzvf redis-3.0.0.tgz
cd redis-3.0.0
/usr/local/php-7.0.10/bin/phpize
./configure --with-php-config=/usr/local/php-7.0.10/bin/php-config
make & make install
sudo vi /usr/local/php-7.0.10/etc/php.ini //修改PHP配置文件 e
xtension=redis.so //添加这一行,重启PHP服务
参考:Linux下Redis安装与PHP扩展(PHP7适用)
8、中间遇到zlib.so明明编译好了也配置了,就是没加载
解决方法:通过查看php-fpm日志如下,发现是编译的问题,在php源码根目录make clean一下重新编译zlib,搞定了
NOTICE: PHP message: PHP Warning: PHP Startup: Invalid library (maybe not a PHP library) /usr/local/php-7.0.10/lib/php/extensions/no-debug-non-zts-20151012/zlib.so'
in
Unknown on line 0
9、安装mbstring扩展
cd /usr/local/src/php-7.0.10/ext/mbstring //这里的php-7.0.10/文件夹是我当初解压PHP安装包得到的。
/usr/local/php-7.0.10/bin/phpize
./configure --with-php-config=/usr/local/php-7.0.10/bin/php-config
sudo make
make install
sudo vi /usr/local/php-7.0.10/etc/php.ini //修改PHP配置文件
extension=mbstring.so //添加这一行,重启PHP服务
10、类似方法安装openssl扩展