@DFFuture
2016-05-24T01:55:42.000000Z
字数 2080
阅读 2376
Yar Thinkphp Ubuntu
Yar 是一个轻量级, 高效的RPC框架, 它提供了一种简单方法来让PHP项目之间可以互相远程调用对方的本地方法. 并且Yar也提供了并行调用的能力. 可以支持同时调用多个远程服务的方法.
- Linux:Ubuntu 14.04
- Apache:Apache 2.4
- Mysql:Mysql 5.5
- PHP: PHP 5.6
启动Apache
$sudo /etc/init.d/apache2 start
$sudo vi test.php//或$sudo gedit test.php
输入
<?phpphpinfo();
浏览器访问127.0.0.1/test.php,如果本地没有图形界面,可以通过外网访问
2. 直接通过命令行查看
$php -r "phpinfo();"
$sudo find / -name phpize//如果没有安装,可以通过开发版来安装该扩展$sudo apt-get install php5-dev
$sudo pecl install msgpack
会提示如下错误
Failed to download pecl/msgpack within preferred state "stable", latest release is version 2.0.1, stability "beta", use "channel://pecl.php.net/msgpack-2.0.1" to installinstall failed
提示中提到最新版本为2.0.1,但访问https://pecl.php.net/package-search.php搜索msgpack发现,最新版本要求PHP 7.0,而我的版本是PHP 5.6,所以只能安装msgpack-0.5.7
$sudo pecl install channel://pecl.php.net/msgpack-0.5.7
安装成功,提示如下,要求配置php.ini,这里先放一下
configuration option "php_ini" is not set to php.ini locationYou should add "extension=msgpack.so" to php.ini
$sudo pecl install yarEnable Msgpack Supports [no] : //填yes
错误提示如下
configure: error: Please reinstall the libcurl distribution - easy.h should be in <curl-dir>/include/curl/ERROR: `/tmp/pear/temp/yar/configure --enable-msgpack=yes' failed
可以通过以下命令解决这个问题
$sudo apt-get install libcurl4-gnutls-dev
安装成功,最后提示
configuration option "php_ini" is not set to php.ini locationYou should add "extension=yar.so" to php.ini
浏览器访问127.0.0.1/test.php,查看php信息并没有看到msgpack和yar,需要进一步配置
$sudo find / -name msgpack.so/usr/lib/php5/20131226/msgpack.so$sudo find / -name yar.so/usr/lib/php5/20131226/yar.so说明``msgpack``和``yar``都已经安装成功
说明msgpack和yar都已经安装成功
cd /etc/php5/mods-available//可以看到扩展的配置文件
$sudo vi msgpack.ini; configuration for php msgpack module; priority=20extension=msgpack.so
$sudo vi yar.ini; configuration for php yar module; priority=40extension=yar.so
[注]:因为
yar依赖于json和msgpack,所以yar的priority的值要大一点
cd /etc/php5/apache2/conf.dls -all
可以看到该目录下都是软链接,在该目录下添加上面两个配置文件的软链接
$sudo ln -s ../../mods-available/msgpack.ini 20-msgpack.ini$sudo ln -s ../../mods-available/yar.ini 40-yar.ini
重启Apache,浏览器访问127.0.0.1/test.php查看phpinfo,可以看到已有yar和msgpack,说明配置成功

[注]:应该修改/etc/php5/apache2下的配置文件而不是/etc/php5/cli下的