11月3日, 2015 720 views

pixiv id=53344723 lost_elle
你造吗?在我写这篇文章的时候,后台正在编译php-5.6.15。。。
我好像发现了一件事,见到版本号高一等总想着升级(尽管非常非常折腾),但是还是忍不住折腾升上去,毕竟折腾无罪
我稍微总结了一下升级的思路
那么,恭喜你,起码你能少折腾一会。
在你安装php的源码目录,会有一个叫config.nice 的神奇文件,请把此文件转移到你准备升级版本的php源码根目录
比如
wget http://am1.php.net/get/php-5.6.0.tar.gz/from/this/mirror tar -zvxf mirror cp php-5.5.16/config.nice php-5.6.0/ cd php-5.6.0/ ./config.nice make ZEND_EXTRA_LIBS='-liconv' make install
抱歉,我那头的编译自动断了。。。又得重新来一趟
同时请注意修改php.ini
方法二:没有源码其实也挺简单
没有config.nice
怎么办。。。别担心,只要你获取了你之前的编译参数,重新安装一遍就OK了,对,就这么简单
/usr/local/php/bin/php -i |grep configure
其中目录请参考你自己安装的地方修改。获取了类似这么一坨东西就好办了
./configure --prefix=/usr/local/webserver/php --with-config-file-path=/usr/local/webserver/php/etc --with-mysql=/usr/local/webserver/mysql --with-mysqli=/usr/local/webserver/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-discard-path --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl --with-xmlrpc --enable-zip --enable-soap
↑↑上述配置请勿当成自己的(配置),请以实际为主 然后一路 make&make install 恭喜,重启php-fpm,无损升级,并且不影响网站运行的升级完成,(又一版本号强迫症的胜利0_0)
后记: 有些php模块是以–with-xxx=你要安装的模块源码 添加的,所以,如果报错的话,请重新添加 以一下为例
wget http://pecl.php.net/get/imagick-3.1.2.tgz tar -xvzf imagick-3.1.2.tgz cd imagick-3.1.2 /usr/local/webserver/php-d/php-5.5.0/bin/phpize export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/ ./configure --with-php-config=/usr/local/webserver/php-d/php-5.5.0/bin/php-config make make install
就是说,重新添加扩展,同时请根据实际修改 php.ini
