[root@lnmp ~]# tar -xvf yaf-2.3.5.tgz
[root@lnmp ~]# cd yaf-2.3.5
[root@lnmp yaf-2.3.5]# phpizeSolarizedDark.xcs
Configuring for:
PHP Api Version: 20121113
Zend Module Api No: 20121212
Zend Extension Api No: 220121212
[root@lnmp yaf-2.3.5]# ./configure --with-php-config=/usr/local/php/bin/php-config
[root@lnmp yaf-2.3.5]# make
[root@lnmp yaf-2.3.5]# make install
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/
查看php.ini配置中是否加入了yaf.so
在vhost目录中新建你想用的vhost配置,当然lnmp这个包为我们提供了简单的命令,直接只用命令
lnmp vhost add
根据提示一步步操作。
完成后打开配置文件添加配置
location /{
if (!-e $request_filename){
rewrite ^/(.*) /index.php?$1 last;
}
}
注意root 要指向你的项目根目录
将本代码克隆下来后放到上一步nginx 配置中的root指向的目录中:(假如我上一步配置的nginx中root /home/wwwroot/default/YafApps )
[root@lnmp YafApps]# pwd
/home/wwwroot/default/YafApps
[root@lnmp YafApps]# tree -L 2
.
├── app
│ ├── admin
│ ├── home
│ ├── index
│ └── user
├── conf
│ └── application.ini
├── index.php
├── library
│ ├── Base
│ ├── DB
│ ├── readme.txt
│ └── Smarty
├── readme.md
└── views
├── templates
└── templates_c
13 directories, 4 files
[root@lnmp YafApps]#
app目录里面放着主要的业务代码。比如里面的admin模块,控制器在controllers里面是Admin.php 如下
<?php
class AdminController extends Base_Control {
public $actions=array(
"info"=>"actions/Info.php",
"m3u8"=>"actions/M3u8.php",
);
public function helloAction(){
echo __METHOD__;
}
}
你可以把action直接写在controller里面比如 helloAction
也可以拆分到到actions目录里面
详细的可以参见鸟哥的yaf手册
views目录里面放着的就是前端模板文件了。比如admin模块的模板就放到了views/template/admin目录中。具体模板的名字你可以在代码中$this->display('info');
来指定。注意template_c目录对www用户需要用写入权限。