Linux下安装php7.0,php7.1,php7.2,php5.6; 安装扩展xdebug-2.7.2; 安装扩展redis-4.3.0;(怀疑人生的一次安装经历!)

./configure --enable-fpm --prefix="/alidata/server/php7.0.33" --with-config-file-path="/alidata/server/php7.0.33/etc/" --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 --enable-zip --with-zlib-dir=DIR --with-pcre-dir --with-libzip=DIR --with-openssl --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip

注意路径 一长串的 一定要用引号 括起来 ;之前没有引号,吃大亏了:出现了 ‘\240’‘\302’”之类的错误 

[root@liang php-7.0.33]# vim Makefile
EXTRA_LIBS 末尾 添加 -liconv
注意有两个配置文件 php.ini ; /alidata/server/php7.0.33/etc/ 下php.ini php-fpm 使用
/alidata/server/php7.0.33/bin/ 下php.ini php 使用(cli方式)

[root@liang Down]# strace /alidata/server/php7.0.33/bin/php -i 2> 2.log

[root@liang Down]# grep 'php.ini' 2.log
open("/alidata/server/php7.0.33/bin/php.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/alidata/server/php7.0.33/etc//php.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
write(1, "Configuration File (php.ini) Pat"..., 33) = 33


[root@liang php-7.0.33]# strace /alidata/server/php7.0.33/sbin/php-fpm -i 2> 1.log

[root@liang Down]# grep 'php.ini' 1.log 
open("/alidata/server/php7.0.33/etc//php.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
write(1, "Configuration File (php.ini) Pat"..., 33) = 33
[root@liang Down]# cd php-7.0.33

通过 php-fpm -i  ; php -i  ; 可以看到一些 信息包括 错误信息
 

[root@liang php-7.0.33]# cp php.ini-development /alidata/server/php7.0.33/etc/php.ini
[root@liang php-7.0.33]# cp php.ini-development /alidata/server/php7.0.33/bin/php.ini


[root@liang php7.0.33]# cd etc
[root@liang etc]# cp php-fpm.conf.default php-fpm.conf
[root@liang etc]# cd php-fpm.d
[root@liang php-fpm.d]# cp www.conf.default www.conf

[root@liang php-fpm.d]# service php-fpm start
Starting php-fpm  done
上述结果 表明 :启动成功!
 

浏览器访问 http://admin.musicliang.com/  文件phpinfo() ;发现 没有 安装 xdebug
 

安装xdebug-2.7.2.tgz  ;关于版本选择 前两个版本数字一样的情况下, 选择第三位数最大的版本!
 

[root@liang Down]# pear install xdebug-2.7.2.tgz 
Build process completed successfully
Installing '/alidata/server/php7.0.33/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so'
install ok: channel://pecl.php.net/xdebug-2.7.2
configuration option "php_ini" is not set to php.ini location
You should add "zend_extension=/alidata/server/php7.0.33/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so" to php.ini

如果这个时候:
[root@liang Down]# service php-fpm restart
访问浏览器 还是 没有xdebug;
[root@liang Down]# php -m
结果中 也没有 xdebug;

看来必须 配置php.ini (两个php.ini都可以配置啦)
按照上一步执行的结果 配置 xdebug.so; 

[root@liang Down]# vim /alidata/server/php7.0.33/etc/php.ini 
在文件最后添加:
zend_extension=/alidata/server/php7.0.33/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so
[root@liang Down]# service php-fpm restart
Gracefully shutting down php-fpm . done
Starting php-fpm  done
[root@liang Down]# 
再次访问浏览器 发现 出现 xdebug了 !!!nice!!
1364  vim /alidata/server/php7.0.33/bin/php.ini 
在文件最后添加:
zend_extension=/alidata/server/php7.0.33/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so
 1365  php -m
出现 xdebug 了 !!! nice !!!
 

下面安装php-7.1.29

./configure --enable-fpm --prefix="/alidata/server/php7.1.29" --with-config-file-path="/alidata/server/php7.1.29/etc" --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 --enable-zip --with-zlib-dir=DIR --with-pcre-dir --with-libzip=DIR --with-openssl --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip

You should add "zend_extension=/alidata/server/php7.1.29/lib/php/extensions/no-debug-non-zts-20160303/xdebug.so" to php.ini

下面安装php-7.2.18

./configure --enable-fpm --prefix="/alidata/server/php7.2.18" --with-config-file-path="/alidata/server/php7.2.18/etc" --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 --enable-zip --with-zlib-dir=DIR --with-pcre-dir --with-libzip=DIR --with-openssl --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip

You should add "zend_extension=/alidata/server/php7.2.18/lib/php/extensions/no-debug-non-zts-20170718/xdebug.so" to php.ini
 

下面安装 php-5.6.40.tar.xz

./configure --enable-fpm --prefix="/alidata/server/php5.6.40" --with-config-file-path="/alidata/server/php5.6.40/etc" --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 --enable-zip --with-zlib-dir=DIR --with-pcre-dir --with-libzip=DIR --with-openssl --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip


You should add "zend_extension=/alidata/server/php5.6.40/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so" to php.ini

他使用一个php.ini 文件 所以改一个地方就可以了。
 

php7.2.18 安装 redis 扩展 4.3.0

Build process completed successfully
Installing '/alidata/server/php7.2.18/lib/php/extensions/no-debug-non-zts-20170718/redis.so'
install ok: channel://pecl.php.net/redis-4.3.0
configuration option "php_ini" is not set to php.ini location
You should add "extension=redis.so" to php.ini
 

为什么说怀疑人生呢, 因为两个 错误,一个是 ./configure 命令后 选项中指定的 路径 没有加引号,另一个是 不清楚php7以上版本使用两个不同php.ini 的事实。

反思:1. 要全局把握认识 如php的组成,安装; 再者养成良好的写shell命令的习惯如 路径加引号;再者遇到安装问题,一定要看信息找错误信息,对于php来说,php -i ; php-fpm -i  就能提供很多如出错的信息。

           2. 不论是 PHP, nginx  ,MySql,版本选择;还是php的一些扩展版本选择,一定要选择bug 少的版本。如 版本号最后一位数字越大,代表已经修改了很多bug了!

 

 

 

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值