ブログ

Armadillo-440でlighttpd+php5-cgi

at_kazutaka.bito
2014年10月3日 21時21分

Armadillo-440でlighttpd+php5-cgiの組み合わせで、phpinfoが見れるまでを確認した。

以下に手順を示す。
(ATDE上で、ビルド済みの環境(atmark-dist/romfs)が存在するものとする。)

1.php5-cgiのdebianパッケージを下記からダウンロードする

  • http://archive.debian.org/debian-archive/debian/pool/main/p/php5/php5-cgi_5.2.6.dfsg.1-1+lenny16_armel.deb

2.パッケージを展開する(以下、tempディレクトリに展開したものとする)

[atde ~]$ dpkg -x php5-cgi_5.2.6.dfsg.1-1+lenny16_armel.deb temp

3.上記2で展開してできたphp5-cgiをromfsに置く

[atde ~]$ cp temp/usr/bin/php5-cgi atmark-dist/romfs/usr/bin

4.php5-cgiに必要なクロスライブラリをインストールする

[atde ~]$ sudo apt-cross --arch armel --suite lenny --install libdb4.6
[atde ~]$ sudo apt-cross --arch armel --suite lenny --install libbz2-1.0
[atde ~]$ sudo apt-cross --arch armel --suite lenny --install libkrb53
[atde ~]$ sudo apt-cross --arch armel --suite lenny --install libxml2

5.make romfsでビルドする。

[atde ~]$ cd ~/atmark-dist/
[atde ~/atmark-dist]$ make romfs

6.lighttpd.confを下記のように編集する。(2か所)

[atde ~/atmark-dist/romfs/lib]$ cd ~/atmark-dist/romfs/etc
[atde ~/atmark-dist/romfs/etc]$ gedit lighttpd.conf
  • 1か所目
#                                "mod_fastcgi",

の#を外して

                                "mod_fastcgi",

にする。

  • 2か所目
#fastcgi.server             = ( ".php" =>
#                               ( "localhost" =>
#                                 (
#                                   "socket" => "/tmp/php-fastcgi.socket",
#                                   "bin-path" => "/usr/bin/php"
#                                 )
#                               )
#                            )

fastcgi.server = (".php" => ((
"bin-path" => "/usr/bin/php5-cgi",
"socket" => "/tmp/php.socket"
)))

にする。

7.make imageでビルドする。

[atde ~/atmark-dist/romfs/etc]$ cd ~/atmark-dist/
[atde ~/atmark-dist]$ make image

8.上記8でビルドしたカーネルをArmadilloに書き込む

9.Armadilloを再起動

10./tmpの属性を変更する。

[armadillo ~]# chmod 777 /tmp

11.lighttpdを起動する。

[armadillo ~]# lighttpd -f /etc/lighttpd.conf

12./home/www-dataにtest.phpという名前でphpinfoのファイルを作成する。

[armadillo ~]# vi /home/www-data/test.php

test.phpファイルの内容 <?php phpinfo(); ?>

13.ブラウザで [ArmadilloのIPアドレス]/test.php を実行すると、phpinfoが見える。