发布于 2014-12-27 09:33:23 | 720 次阅读 | 评论: 0 | 来源: PHPERZ
Yaf PHP开发框架
Yaf,全称 Yet Another Framework,是一个C语言编写的PHP框架, 是一个以PHP扩展形式提供的PHP开发框架, 相比于一般的PHP框架, 它更快,更轻便. 它提供了Bootstrap, 路由, 分发, 视图, 插件, 是一个全功能的PHP框架。
本文为大家讲解的是如何可在Mac下安装yaf ,yaf是一个C语言编写的PHP框架,感兴趣的同学参考下。
Yaf,全称 Yet Another Framework,是一个C语言编写的PHP框架, 是一个以PHP扩展形式提供的PHP开发框架, 相比于一般的PHP框架, 它更快,更轻便. 它提供了Bootstrap, 路由, 分发, 视图, 插件, 是一个全功能的PHP框架。
XAMPP是Apache + MySQL + PHP + Perl的一键傻瓜安装包,在官网上安装Mac版的安装包。安装完毕之后,打开http://127.0.0.1/,如果看到了xampp的欢迎页面,说明就成功了。
好了,我们需要的Apache和PHP都安装好了,这些先放着,开始安装yaf
先在yaf官网上面下载最新的源码,然后按照官网上的教程进行安装。其实就是这四个命令:
$PHP_BIN/phpize
./configure --with-php-config=$PHP_BIN/php-config
make
make install
需要注意两个问题:
$PHP_BIN
指的是php所在的bin目录,而且一定要是之前XAMPP安装的php的bin目录,也就是/Applications/XAMPP/bin/
sudo
make install
之后,系统会告诉你编译出一个yaf.so
,并且存放在某个文件夹下面,我们要的就是这个文件。具体存放在哪你可以不用关心,因为php是知道在哪的。接下来,将yaf.so加入配置文件php.ini
中。
vi /Applications/XAMPP/etc/php.ini
加入以下语句:
extension=yaf.so
使用php -m
,查看yaf是否已经加入php
/Applications/XAMPP/bin/php -m
[PHP Modules]
……
省略一些模块
……
xmlwriter
xsl
yaf
zip
zlib
[Zend Modules]
如果看到了yaf,就说明yaf这个模块已经载入成功了。
按照yaf官网上面的教程,生成一份样例的yaf应用,具体步骤如下:
下载php-yaf源码
git clone https://github.com/laruence/php-yaf/
运行代码生成工具
$PHP_YAF_SRC/tools/cg/yaf_cg sample
将sample文件夹存在一个单独的路径,用作Apache的virtual host的根目录,比如我就放在了/Users/Quxiao/dev/apache_virital_root/sample
这个路径。
vi /Applications/XAMPP/xamppfiles/etc/extra/httpd-vhosts.conf
将其中的8080端口的<VirtualHost>
配置改掉,修改端口以及DocumentRoot
,例如
#端口可以改成自己想要的端口
<VirtualHost *:8081>
ServerAdmin webmaster@dummy-host2.example.com
#该路径就是上一步样例yaf应用的路径
DocumentRoot "/Users/Quxiao/dev/apache_virital_root/sample"
ServerName dummy-host2.example.com
ErrorLog "logs/dummy-host2.example.com-error_log"
CustomLog "logs/dummy-host2.example.com-access_log" common
</VirtualHost>
vi /Applications/XAMPP/xamppfiles/etc/httpd.conf
加入上面virtual host的配置,在文件中查找,去掉Include
前的注释符号#
# Virtual hosts
Include etc/extra/httpd-vhosts.conf
开启virtual host的端口
#Listen 12.34.56.78:80
Listen 80
# 添加8081端口
Listen 8081
添加访问权限配置,加入以下内容:
<Directory "/Users/Quxiao/dev/apache_virital_root/sample">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/trunk/mod/core.html#options
# for more information.
#
#Options Indexes FollowSymLinks
# XAMPP
Options Indexes FollowSymLinks ExecCGI Includes
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
#AllowOverride None
# since XAMPP 1.4:
AllowOverride All
#
# Controls who can get stuff from this server.
#
Require all granted
</Directory>
其实就是将原本已有的<Deirectory>
部分复制一份,然后把路径改成之前设置的virtual host的DocumentRoot
在Launchpad中开发XAMPP的管理器,在Manager Servers
中将Apache重启
激动人心的时刻到了,访问http://127.0.0.1:8081/,看是否出现了
Hello World! I am Stranger
如果出现了,就表示你已经在Mac上成功安装了yaf!
完成。