ruby有了rbenv,rvm,nodejs也有nvm,当然php也应该有个类似的 phpenv , php-version , phpbrew 来管理PHP版本,简单查看了下这三个工具,我更偏向于phpbrew一些,其实我更愿意叫它PHPbrew.
1.安装PHPbrew
下载:
curl -L -O https://github.com/phpbrew/phpbrew/raw/master/phpbrewchmod +x phpbrewsudo mv phpbrew /usr/bin/phpbrew
2.简单使用
为你的shell环境运行初始化脚本:
phpbrew init
设置环境变量:
sudo vi ~/.bashrc#文件最后,插入下面这行代码source ~/.phpbrew/bashrc#保存退出:wq
显示已知版本:
- Read local release list (last update: 2017-04-05 08:08:43 UTC). You can run `phpbrew update` or `phpbrew known --update` to get a newer release list. 7.1: 7.1.3, 7.1.2, 7.1.1, 7.1.0 ... 7.0: 7.0.17, 7.0.16, 7.0.15, 7.0.14, 7.0.13, 7.0.12, 7.0.11, 7.0.10 ... 5.6: 5.6.30, 5.6.29, 5.6.28, 5.6.27, 5.6.26, 5.6.25, 5.6.24, 5.6.23 ... 5.5: 5.5.38, 5.5.37, 5.5.36, 5.5.35, 5.5.34, 5.5.33, 5.5.32, 5.5.31 ... 5.4: 5.4.45, 5.4.44, 5.4.43, 5.4.42, 5.4.41, 5.4.40, 5.4.39, 5.4.38 ...
显示旧版本:
phpbrew known --old
更新版本列表:
phpbrew known --update
3.编译安装PHP
默认配置安装PHP:
安装
phpbrew install 5.6.30 +default +mysql +curl +gd +fpm -- --with-curl=/usr/local/
清理编译目录:
phpbrew clean
php-5.6.30 安装后扩展列表
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dom
ereg
fileinfo
filter
hash
json
libxml
mbstring
mcrypt
mhash
mysql
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
Phar
posix
readline
Reflection
session
shmop
SimpleXML
sockets
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
xml
xmlreader
xmlwriter
xsl
zip
zlib
[Zend Modules]
4.PHP编译参数
显示可用参数:
phpbrew variants
只贴啦+default的参数:default: bcmath, bz2, calendar, cli, ctype, dom, fileinfo, filter, ipc, json, mbregex, mbstring, mhash, mcrypt, pcntl, pcre, pdo, phar, posix, readline, sockets, tokenizer, xml, curl, openssl, zip
5.使用和切换
临时使用:
phpbrew use php-5.6.30
切换版本(设置默认版本):
phpbrew switch php-5.6.30
关闭:
phpbrew off
6.显示已经安装过的PHP版本
phpbrew list
7.管理FPM
NGINX需要配合php-fpm使用,因此,如果是使用 LNMP 或者自己安装的NGINX+PHP的运行环境,则需要在phpbrew安装PHP的时候加上+fpm 模块,才能使用phpbrew的模块管理.
启动FPM:
phpbrew fpm start
停止FPM
phpbrew fpm stop
显示php-fpm的模块:
phpbrew fpm module
测试php-fpm的配置
phpbrew fpm test
配置php-fpm
phpbrew fpm config
php-fpm 手动重启命令:
cat /home/ubuntu-vm/.phpbrew/php/php-5.6.30/var/run/php-fpm.pid
=> pid
kill -SIGINT pid 立即终止
kill -SIGQUIT pid 平滑终止
kill -SIGUSR2 pid 重启
1394

被折叠的 条评论
为什么被折叠?



