Nginx+FastCGI 环境搭建 Kohana

Kohana 默认仅对 Apache 环境提供的部署支持,其实对于 Nginx+FastCGI 也是很容易支持的。本文搭建环境是 Ubuntu 10.4 并采用 apt-get 方式安装,喜爱编译的朋友可以自行解决 :)

1. 安装 MySQL

sudo apt-get install mysql-server mysql-client

安装过程在会提示设置 root 账户的密码,如果是本机测试开发可以留空后稍候设置。

2. 安装 Nginx

# 安装 Nginx
sudo apt-get install nginx
# 启动 Nginx
sudo /etc/init.d/nginx start

完成上面两步之后,打开浏览器,输入 localhost 或 127.0.0.1 如果看到 Welcome to Nginx! 字样就说明安装成功了,是不是很简单 :)

注意,如果你的机器上面如果安装了其他 web 容器(比如 Apache,Lighttd等),启动 ngnix 的时候肯定会报错,因为这些 web 容器启动均占用的 80 端口,更改的方法如下:
编辑 /etc/nginx/sites-available/default 文件,修改 server 段中的 listen 为 localhost:8080,其中 8080 是更改的监听端口:

server {
	listen   localhost:8080;
	server_name  localhost;

# [...]

保存后重启Nginx:

sudo /etc/init.d/nginx restart

Continue reading

Douban API Package 发布!

Douban API Package 是一个使用 PHP 开发且基于 Kohana v3 开发的一个扩展(Module)。

它对豆瓣 API 进行重新封包。它使用起来非常方便,可以快速开发一个 web 应用。

为什么要另外封包?
对,豆瓣官方提供了一种 PHP 的解决方案,可是需要庞大的支持库:GData(20M左右)以及可能无法修改的环境配置(租用的空间主机会遇到这样的问题)。虽说 Douban API Package 也是基于框架开发,不过 Kohana 是一个纯 PHP5 模式且体积小巧(仅有 478KB),优秀迅捷的框架。最重要的是,Douban API Package 提供了目前官方所有功能的支持。并有线上网站:魔豆豆瓣 API 控制台长期运营。

虽然它是基于 Kohana 框架开发,但是并没有使用太多的依赖,稍微熟悉可以轻松分离出来!

安装需求

  • PHP 5.2+ with curl module
  • Kohana v3 – 一款纯 PHP 5 框架,它的特点就是高安全性轻量级代码容易使用

安装步骤
步骤 0: 部署 Kohana v3

下载并安装 Kohana v3 的过程,请大家参考此教程:使用 Git 部署 Kohana 系统

步骤 1: 下载本扩展!

你可以在部署完毕的 Kohana 系统的根目录执行下面操作:

$ git submodule add git://github.com/icyleaf/douban.git modules/douban

完成!

或者你也可以从本github 项目 下载压缩包放置在 modules 文件夹下面。

步骤 2: 在 bootstrap.php 文件中启用该模块(默认情况下,存储在 `application’ 文件夹)

/**
 * Enable modules. Modules are referenced by a relative or absolute path.
 */
Kohana::modules(array(
     'douban'        => MODPATH.'douban',     // Douban API Module
    // 'database'   => MODPATH.'database',   // Database access
    // 'image'      => MODPATH.'image',      // Image manipulation
    // 'orm'        => MODPATH.'orm',        // Object Relationship Mapping (not complete)
    // 'pagination' => MODPATH.'pagination', // Paging of results
    // 'paypal'     => MODPATH.'paypal',     // PayPal integration (not complete)
    // 'todoist'    => MODPATH.'todoist',    // Todoist integration
    // 'unittest'   => MODPATH.'unittest',   // Unit testing
    // 'codebench'  => MODPATH.'codebench',  // Benchmarking tool
    ));

目录结构

douban
  +--- classes
         +--- controller               # 豆瓣样例
         +--- douban                   # Douban API Package
                +--- api               # Douban API
                +--- core.php          # Douban Core
                +--- oauth.php         # Douban OAuth
                +--- request.php       # Douban Requset
                +--- response.php      # Douban Response
         +--- douban.php               # Douban API Class
  +--- config
         +--- douban.php               # 豆瓣 API 配置文件
         +--- user_agents.php          # 奉送给大家一些手机 User agent 配置文件
  +--- media
         +--- images                   # 奉送给大家豆瓣 API 用到的图像
  +--- vendor
         +--- OAuth.php                # OAuth 官方推荐 PHP 库
  +--- LICENSE
  +--- README.markdown

快速上手
Douban API Package 提供一些演示用例,系统部署完毕后可以通过 http://host/demo_douban 访问。

文件路径:classes/controller/douban_demo.php

源码库:http://github.com/icyleaf/douban

祝你开发顺利!

如果任何疑问或者 Bugs 反馈,即可以在本项目中提交 Issue 或者给我发邮件:icyleaf.cn囧gmail.com (请替换 “囧” 为 @)

Kohana 官方 2.3,2.4,3.0 的最终裁决!

更新:Kohana 官方已经做出最终裁决

两天前我(Shadowhand)曾经说过关于 2.4 和 3.0 版本的问题和它们之间的关系已经做出的解答。之后的今天和其他开发者见面(with more of the devs),这似乎是错误的。所以长话短说,我们现在有两个选择:

1. 我们在一个月内分别发布 2.4 和 3.0。 2.4 将会经可能的兼容 2.3.x 版本但是其中 Database 和 i18n 是全新的不同于 2.3 的系统。 3.0 也将不同于 2.4 的 Database,但是 i18n 系统还是和 2.4 一致。

2. 完全抛弃 2.4 而专攻 3.0 版本,它将会有一个全新的类似 2.4 版本的 Database 特性,但是语法和更多的特性稍有些不同。 3.0 在发布的同时,新的网站和用户手册也会同步完成。

2.4 和 3.0 版本大约将会在同一天发布(2009年的8月下旬或9月上旬)。两个版本都不会去兼容 2.3.4 版本。虽然升级至 2.4 版本将会少于升级至 3.0 的兼容工作。(请记住,我们从来没有建议和要求用户升级到哪个核心版本)

我本可以行使 BDFL(Benevolent Dictator For Life,代表少数开源软件开发者的领头人)权利做个强制决定,但是我觉得还是听一听社区的声音。你们认为哪个是 Kohana 在未来长期(至少 6 个月以上)开发基础的最好选择呢?
Continue reading