不灭的焱

革命尚未成功,同志仍须努力下载JDK17

作者:Albert.Wen  添加时间:2017-10-27 19:27:59  修改时间:2024-04-28 23:02:47  分类:Linux软件安装/参数优化  编辑

编译PHP时指定路径

./configure --prefix=/alidata/server/php/php-5.6
make && make install

这样可以PHP版本就可以安装到一个特别的路径,而不是安装到 /usr/local/ 下。多个版本的 PHP 分别保存在各自的目录中,根据程序需要启动不同的 PHP。

/alidata/server/php/php-5.6/bin/php  server.php

 

编写自动切换版本脚本

php-5.6.sh:

sudo rm -rf /usr/local/bin/php
sudo rm -rf /usr/local/bin/phpize
sudo rm -rf /usr/local/bin/php-config
sudo rm -rf /etc/php.ini

sudo ln -s /alidata/server/php/php-5.6/bin/php /usr/local/bin/php
sudo ln -s /alidata/server/php/php-5.6/bin/phpize /usr/local/bin/phpize
sudo ln -s /alidata/server/php/php-5.6/bin/php-config /usr/local/bin/php-config
sudo ln -s /alidata/server/php/php-5.6/etc/php.ini /etc/php.ini

sudo killall php-fpm
sudo cp -rf /alidata/tmp/deepin-sdk/source2/php/php-5.6.32/sapi/fpm/init.d.php-fpm  /etc/init.d/php-fpm
sudo /etc/init.d/php-fpm restart

echo "to php-5.6 done"

php-7.1.sh:

sudo rm /usr/local/bin/php
sudo rm /usr/local/bin/phpize
sudo rm /usr/local/bin/php-config
sudo rm /etc/php.ini

sudo ln -s /alidata/server/php/php-7.1/bin/php /usr/local/bin/php
sudo ln -s /alidata/server/php/php-7.1/bin/phpize /usr/local/bin/phpize
sudo ln -s /alidata/server/php/php-7.1/bin/php-config /usr/local/bin/php-config
sudo ln -s /alidata/server/php/php-7.1/etc/php.ini /etc/php.ini

sudo killall php-fpm 
sudo cp -rf /alidata/tmp/deepin-sdk/source2/php/php-7.1.12/sapi/fpm/init.d.php-fpm  /etc/init.d/php-fpm
sudo /etc/init.d/php-fpm restart

echo "to php-7.1 done"

 


Mac 上的切换脚本

注意:别忘了

1、去掉 .bash_profile  文件中,对 PHP 路径的配置(附:Mac Pro 修改环境变量);

2、删除掉 /usr/bin/php 文件;

后记1:

在 Mac 电脑上,删除不了系统自带的 PHP-5.6.25(没有权限,sudo 也不行),文件路径为 /usr/bin/php,顿时感觉 Mac 在安全性这块(用户权限)做的非常好。最后的解决方案是,修改 .bash_profile 文件,详细参考:Mac Pro 修改环境变量

后记2:

换成了其他脚本方式,实现了 Mac Pro 的PHP多版本切换,详情查看:Mac Pro 实现 PHP-5.6 与 PHP-7.1 等多版本切换

 

 

延伸阅读:

Mac Pro 编译安装 PHP 5.6.21 及 问题汇总

记 Mac 升级后,编译安装 PHP-5.6.28 / PHP-7.0 报错修复过程