Yaf 安装配置 Mac

参考: https://github.com/laruence/yaf

安装

1.下载Yaf包

下载Yaf包

http://pecl.php.net/package/yaf

从 https://github.com/laruence/yaf 克隆源代码

cd ~/Downloads/

git clone https://github.com/laruence/yaf.git

2.查看php/bin目录

执行 php -info 命令

php -info

通过 phpinfo() 打印信息

打印信息中的 Configure Command 中找到 /usr/local/Cellar/php70/7.0.20_12/bin

3.执行 $PHP_BIN_目录/phpize

初次使用 phpize 需要 安装 autoconf , 安装方法在后面

注意:$PHP_BIN 是自己的php/bin的目录

cd ~/Downloads/yaf

 /usr/local/Cellar/php70/7.0.20_12/bin/phpize

 ./configure --with-php-config=/usr/local/Cellar/php70/7.0.20_12/bin/php-config

 make

 make install

安装成功后会出现以下提示

Installing shared extensions:     /usr/local/Cellar/php70/7.0.20_12/lib/php/extensions/no-debug-non-zts-20151012/

4.确认编译后的文件

ls /usr/local/Cellar/php70/7.0.20_12/lib/php/extensions/no-debug-non-zts-20151012/yaf.so

错误:

执行 phpize 时会出现以下报错

Configuring for:
PHP Api Version:         20151012
Zend Module Api No:      20151012
Zend Extension Api No:   320151012
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.

上面的错误提示是指需要安装autoconf

错误:Permission denied

下载文件可能会出现权限限制问题,更改yaf源码目录权限

cd ~/Downloads/

sudo chmod -R 777 yaf

安装 autoconf

执行以下安装命令
Linux

sudo apt-get install m4
sudo apt-get install autoconf

yum install m4
yum install autoconf

Mac

brew install autoconf

执行 brew 命令需要安装 homebrew 详见:Mac Homebrew

配置

1.打开php.ini

sudo vi /usr/local/etc/php/7.0/php.ini

sudo open /usr/local/etc/php/7.0/php.ini

2.在php.ini 中添加以下配置

可以添加在 Module Settings 后面

[yaf]
yaf.environ = product
yaf.library = NULL
yaf.cache_config = 0
yaf.name_suffix = 1
yaf.name_separator = ""
yaf.forward_limit = 5
yaf.use_namespace = 0
yaf.use_spl_autoload = 0
extension=yaf.so

添加完成后执行

3.保存并退出

:wq

注意:不要少了冒号,w=保存 q=退出

Yaf 安装配置 Mac_第1张图片
Snip20170719_4.png

重启PHP

ngixn

如果使用nginx提供php服务需要重启php,单纯重启nginx不会生效

sudo killall php-fpm

sudo /usr/local/Cellar/php70/7.0.18_10/sbin/php70-fpm restart

apache

直接重启apache服务即可

sudo apachectl restart

你可能感兴趣的:(Yaf 安装配置 Mac)