[轉] php5.4.5移植到arm-linux摘要,lighttpd配置

出處:http://hi.baidu.com/sunflower/item/f406291d624d38f486ad4e65

php5.4.5移植到arm-linux摘要.
因为有嵌入WEB服务的需求,再常识了N多的开源的嵌入服务后最终选择了lighttpd.Apache太大支了,而且在arm上对swf的支持不好.
其他的都不怎么理想.
lighttpd的移植过程就省略了。这里只摘要了PHP移植,采用fastcgi与lighttpd 协作.
php版本:php5.4.5
交叉编译设置参数:
./configure –enable-fastcgi –enable-force-cgi-redirect –enable-discard-path –disable-cli –without-iconv –enable-mbstring –enable-pdo=shared –with-sqlite=shared –with-pdo-sqlite=shared –host=arm-linux
*5.3以后的版本默认就支持fastcgi,所以上面的fastcgi的配置会提示不存在,不用理会.
//arm方案
export CC=”arm-hisiv200-linux-gcc”
//编译
make
*make中,会有各种库或头文件的引用,另行安装编译然后修改MakeFile即可;
//编译后
1、在sapi/cgi/下即是得到的可执行文件:php-cgi;
2、在板子上任意目录建1个文件夹 ‘php’,将php-cgi复制到该目录中;
3、编辑lighttpd.conf基本配置信息,注意其内嵌配置文件 ‘modules.conf’;
4、编辑’modules.conf’:
//server.module修改,注意其关联的’fastcgi.conf’
server.modules = (
  “mod_access”,
#  “mod_alias”,
#  “mod_auth”,
  “mod_evasive”,
  “mod_redirect”,
  “mod_rewrite”,
#  “mod_setenv”,
#  “mod_usertrack”,
)
5、编辑fastcgi.conf:确保包含’server.modules+=(“mod_fastcgi”)’
fastcgi.server = ( “.php” =>
                   ( “php-local” =>
                     (
                       “socket” => “/tmp/php-fastcgi.socket-0”,
                       “bin-path” => “/home/yjm/php/php-cgi”,
                       “max-procs” => 1,
                       “broken-scriptfilename” => “enable”,
                     )
                   ),
                   ( “php-tcp” =>
                     (
                       “host” => “127.0.0.1”,
                       “port” => 9999,
                       “check-local” => “disable”,
                       “broken-scriptfilename” => “enable”,
                     )
                   ),
                   ( “php-num-procs” =>
                     (
                       “socket” => “/tmp/php-fastcgi.socket-1”,
                       “bin-path” => “/home/yjm/php/php-cgi”,
                       “bin-environment” => (
                         “PHP_FCGI_CHILDREN” => “16”,
                         “PHP_FCGI_MAX_REQUESTS” => “10000”,
                       ),
                       “max-procs” => 5,
                       “broken-scriptfilename” => “enable”,
                     )
                   ),
                )
6、可建立一个php页面index.php:<?php phpinfo();?>,运行页面后注意:
Configuration File (php.ini) Path ,如果没有可参照[7];
7、可将php源码中的php.ini-recommended改名为php.ini,复制到板子的目录/usr/lib中;
* 之所以要写这个笔记,是因为这个移植完全是手工的,没有任何安装过程,现在配置完成后终于有点理解了。
未經允許不得轉載:GoMCU » [轉] php5.4.5移植到arm-linux摘要,lighttpd配置