笔者开发坏境:CentOS7,PHP 7.0.16
安装PECL
//php版本 > 7
$ wget http://pear.php.net/go-pear.phar
$ php go-pear.phar
//php版本 < 7 $ yum install php-pear //否则会报错PHP Parse error: syntax error, unexpected //'new' (T_NEW) in /usr/share/pear/PEAR/Frontend.php on //line 91
- 1
- 2
- 3
- 4
- 5
- 6
- 7
安装swoole
$ sudo pecl install swoole
//报错如下
//Warning: Invalid argument supplied for foreach() in //Command.php on line 249
vi `which pecl`
//找到最后一行
exec $PHP -C -n -q $INCARG -d date.timezone=UTC -d output_buffering=1 -d variables_order=EGPCS -d safe_mode=0 -d register_argc_argv="On" $INCDIR/peclcmd.php "$@" 去掉 -n 标示 //报错如下 //running: phpize //Can't find PHP headers in /usr/include/php 安装 PHP devel 成功! //Build process completed successfully //Installing '/usr/lib64/php/modules/swoole.so' //install ok: channel://pecl.php.net/swoole-1.9.8
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
配置 php.ini
$ php -i | grep php.ini
//修改或者添加
extension=swoole.so
- 1
- 2
- 3
安装 yar
$ sudo ./pecl install msgpack
//pecl/yar requires PHP (version >= 5.2.0, version <= 5.6.99), installed version is 7.0.16
//注意PHP7,要使用yar-2.0.2
$ sudo ./pecl install yar-2.0.2 //注意yar-2.0.2版本 //添加,json.so 要放到前面。否则会报 //PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/yar.so' - /usr/lib64/php/modules/yar.so: undefined symbol: php_json_decode_ex in Unknown on line 0 extension=json.so //放前面 extension=swoole.so extension=msgpack.so extension=yar.so 其他问题!!! //报错 //perl: warning: Setting locale failed. //perl: warning: Please check that your locale //settings: // LANGUAGE = (unset), // LC_ALL = (unset), // LANG = "en_US.UTF-8" $ localedef -v -c -i en_US -f UTF-8 en_US.UTF-8 //报错 //checking for cURL in default path... not found //configure: error: Please reinstall the libcurl distribution - easy.h should be in <curl-dir>/include/curl/ $ sudo yum -y install curl-devel
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
安装Yaf
$ sudo ./pecl install yaf
//更新php.ini
extension=yaf.so
//重启服务 $ sudo systemctl restart php-fpm.service //安装脚手架 $ git clone http://pecl.php.net/package/yaf $ cd php-yaf/tools/cg $ php yaf-cg app //配置 项目目录指向 app/index.php //访问配置host
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
nginx配置
server {
listen ****;
server_name domain.com;
root document_root;
index index.php index.html index.htm; if (!-e $request_filename) { rewrite ^/(.*) /index.php/$1 last; } }
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11