對于線上服務器部署,對于我們一些非專業(yè)運維程序員來說,『寶塔』鏡像提供的服務器管理軟件,給我們提供了極大的遍歷。所以,新服務器的系統(tǒng),打算直接采用寶塔鏡像。
因不同系統(tǒng),我們可能需要不同的 PHP 版本,寶塔支持安裝多個 PHP 版本,并且,允許不同項目配置不同的 PHP 版本。
但當我們想在 linux 系統(tǒng)上,切換全局的 PHP 版本,寶塔并未提供。
下面我們來切換全局的 PHP 版本,這里來說下我當時的思路:
1.通過寶塔面板,安裝的軟件,都在 /www/server/ 下
進入 php/,會發(fā)現(xiàn)存在多個版本的 php:
56/
71/
進入目錄,大致瀏覽下:
bin/
etc/
include/
lib/
php
sbin/
var/
php 相關的命令,都放在 bin/ 和 sbin/
bin/
pear
peardev
pecl
phar -> phar.phar
phar.phar
php
php-cgi
php-config
phpize
sbin/
php-fpm
2.我們查看 php 命令所在文件
which php
/usr/bin/php
ls -l /usr/bin/php
/usr/bin/php -> /www/server/php/56/bin/php
發(fā)現(xiàn)是引用的 56 版本
接著思考,和 php 相關的命令,我們一般使用的就是:php 和 php-fpm,接著查看 php-fpm
which php-fpm
/usr/bin/php-fpm
ls -l /usr/bin/php-fpm
/usr/bin/php-fpm -> /www/server/php/56/sbin/php-fpm
再想,是不是還有其他 php 相關的命令,是我們不清楚的,在 /usr/bin/ 查找 'php' 匹配到的命令
ls -l /usr/bin | grep php // 也可以搜尋其他 bin|sbin 目錄下的命令,不過應該沒有...
pear -> /www/server/php/56/bin/pear
pecl -> /www/server/php/56/bin/pecl
php -> /www/server/php/56/bin/php
php-fpm -> /www/server/php/56/sbin/php-fpm
phpize -> /www/server/php/56/bin/phpize
3.到目前為止,我們應該很清晰了,切換 PHP 版本,我們切換對不同版本下的命令的 『軟鏈接』 即可。
ln -sfv /www/server/php/71/bin/pear /usr/bin/pear
ln -sfv /www/server/php/71/bin/pecl /usr/bin/pecl
ln -sfv /www/server/php/71/bin/php /usr/bin/php
ln -sfv /www/server/php/71/bin/phpize /usr/bin/phpize
ln -sfv /www/server/php/71/sbin/php-fpm /usr/bin/php-fpm