2011年8月15日月曜日

PHP版WSGIを簡単に試してみる(AppServer)

最近、xSGIもの(WSGI,Rack,JSGI,PSGI,...)を確認中で、PHP版WSGIを簡単に試してみるメモです。

ubuntu11で、AppServerを使います。Kelpieというのもあるらしいけど。

・php, pearの環境を準備する。
apt-get install php-pear

・AppServerを準備する。
pear channel-discover pear.symfony-project.com
pear channel-discover pear.indeyets.pp.ru
pear install indeyets/AppServer

・自前のアプリケーションHelloWorldApp.class.phpを準備する。

<?php

class HelloWorldApp{
    public function __invoke($env) {
        return array(200, array('Content-type', 'text/plain'), 'Hello world');
    }
}
bodyの戻り値がただの文字列なのが、AppServerの、ちょっと変わってるところ。

・設定ファイルaip.yamlを準備する。

apps:
  -
    app: &HelloWorldApp
      class: HelloWorldApp
      file: ./HelloWorldApp.class.php
      middlewares: []

servers:
  -
    protocol: HTTP
    socket: 'tcp://0.0.0.0:8090'
    min-children: 5
    max-children: 10
    app: *HelloWorldApp

・実行する。
aip app aip.yaml

・ブラウザから、「http://ご自分のサーバー:8090/」としてみる(ポート番号は設定ファイルのもの)と、「Hello World」と表示される。

--
以上

0 件のコメント:

コメントを投稿