Linux和Windows系统安装配置Yaf框架的方法 - Apache - 服务器之家

服务器之家

专注于服务器技术!
当前位置:首页 > Web服务器 > Apache

Linux和Windows系统安装配置Yaf框架的方法

发布时间:2014-04-06 来源:服务器之家

其实, 这篇只是摘抄一下手册稍作一些修改[ 高手可以直接忽视 ]

关于Yaf
Yaf是一个C语言编写的PHP框架

那么关于 Yaf 到底是个什么样的PHP框架,性能如何,这些就请移步到 Yaf 官方博客去了解吧,也就是我们PHP的神-鸟哥!

好了,本文只是(仅仅是)说明和演示怎么在Linux下和win下部署Yaf(linux演示基于yaf 2.2.9版本[目前最新版]). 那么yaf到底能安装或者说是部署在什么的操作系统上尼,我自己测试和安装过win7/8,CentOS,ubuntu等。

Linux 下安装

Yaf的安装和配置官方手册:
Yaf的安装前的一些准备:
Yaf只支持PHP5.2及以上的版本. 并支持最新的PHP5.3.3 [经过测试,其实最新的PHP5.5也是可以正常运行,本安装教程就是基于centos6.3 x64 & PHP 5.5 最新版演示]
Yaf需要SPL的支持. SPL在PHP5中是默认启用的扩展模块
Yaf需要PCRE的支持. PCRE在PHP5中是默认启用的扩展模块

好了,感觉太罗里吧嗦,上面的要求你都达到了,那么就接着做这几个步骤:
1. 去Pecl下载 Yaf的发布包 [2.2.9],并且解压,并进去 yaf-2.2.9 源码目录

wget http://pecl.php.net/get/yaf-2.2.9.tgz &&
tar zxvf yaf-2.2.9.tgz && cd yaf-2.2.9

2.接着依次执行:

         $PHP_BIN/phpize
        ./configure --with-php-config=$PHP_BIN/php-config
         make
         make install

[解释一下:$PHP_BIN 就是你php的安装目录的bin目录路径,比如我的php安装路径是在:/usr/local/php/bin/ ,那么我的就是这样执行,我就一次性给写了,如下:]

/usr/local/php/bin/phpize  && ./configure --with-php-config=/usr/local/php/bin/php-config &&
 make && make install

执行完你看到了这么一句,说明你第一步Yaf编译部分是ok了.

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/

那么我们可以看看这个目录下到底有些什么

ll  /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/

可以看到 yaf.so php扩展也已经帮我们编译好了,所以接下来我们就开始要回到php去找php.ini的配置文件了.

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

然后在php.ini中载入yaf.so

extension=yaf.so

重启PHP.

/etc/init.d/php-fpm restart

那么到底我们安装到底有没有成功呢?我们就测试一下.
vi /usr/local/nginx/html/index.php 写上一句 phpinfo();
,然后你运行之后,你发现如下图,那么恭喜你安装成功,就开始你的yaf之旅吧.

yaf

windows 下安装[win下目前已经编译的最高版本好像支持到php 5.4.x]
windows 下安装相对比linux简单多了. 但是也是要求php最低版本不能低于PHP 5.2

1.首先去下载windows下面的编译好的dll [yaf.dll]
如何选择那个版本的dll尼? 嘿嘿,这个时候,就要用到我们的 phpinof()看一下你的php版本是多少。我的是php 5.3.13 所以我选择是php_yaf-2.1.9-x86-5.3.13-zts-nodebug.dll ,那么有两个5.3.13版本的dll我们又该选择那个,还是得看phpinfo() 如果 Thread Safety enabled 项为 enabled 的话就选择 zts 版本,反之应该就是 nts 了.

2.然后就是找到F:/wamp/bin/php/php5.3.13/ext/ (根据你自己系统路径)目录下把刚才下载的 php_yaf-2.1.9-x86-5.3.13-zts-nodebug.dll复制重命名为 yaf.dll。然后打开php.ini 加上 extension=yaf.dll 重启一下服务.就可以了.[在这里啰嗦一下,关于Apache或者nginx是运行那个php.ini这里也是得根据phpinfo里的信息来确定,比如Wampserver,x64(在Apache/bin目录下)和x86的版本就是不一样]

yaf windows php 5.3.13

yaf windows php 5.3.13

需要注意: 不管是在linux还是在win下,有时候步骤都对了,但是phpinfo还是没有出现的时候,你要检查一下你是用的是那个 php.ini 文件,你可以在页面搜索一下.然后顺便看看 extension_dir 指向的目录是那个.Loaded Configuration File 看看他指向的是那个php.ini 就修改那个php.ini

如何开启 Yaf 的命名空间功能,文档里默认是关闭的

yaf.use_namespace 0  PHP_INI_SYSTEM 开启的情况下, Yaf将会使用命名空间方式注册自己的类, 比如Yaf_Application将会变成YafApplication

所以如果我们要用命名空间,那么就修改一下php.ini就可以
添加

[yaf]
yaf.use_namespace = 1

重启一下php 服务就可以了。
ok,至此,yaf安装完成,是不是很简单.