当前位置: 首页 > 工具软件 > Tiny httpd > 使用案例 >

boa php5.5 移植,BOA+PHP在Tiny6410上的移植

羊舌兴德
2023-12-01

一、下载php-5.2.17.tar.bz2linux

二、解压到/vptempsql

#tar -jxv -f php-5.2.17.tar.bz2 -C /vptemp浏览器

三、编译app

# cd /vptemp/php-5.2.17ide

#CC=arm-linux-gcc ./configure --host=arm-linux --prefix=/opt/php5 --disable-all --enable-pdo --with-sqlite3 --with-sqlite --with-pdo-sqlite --with-zlib --without-iconv测试

在作这个配置的时候出点问题,不知道为何CC=arm-linux-gcc就是不对,配置出来的Makefile里面仍是gcc,libtool也彻底不对,气死了。重启机子又折腾了半天,居然不知道怎么弄的又能够起做用了。命令行

#makesqlite

make的时候出现:undefined reference to dlopen、undefined reference to dlclose,解决方法:在makefile中EXTRA_LIBS以后加上-ldl

四、安装

#make install

将PHP源码包中php.ini-dist文件复制到/opt/php5/lib下并更名为php.ini,由于指定了prefix,PHP缺省会去/opt/php5/lib下找php.ini

五、下载到Tiny6410

#cd /opt

#tar -jcv -f php5-e.tar.bz2 php5

将/opt/php5-e.tar.bz2文件件拷贝到arm板上的/opt目录下,解压:

#tar -jxv -f php5-e.tar.bz2 -C /opt

六、配置BOA

要让BOA可以经过CGI执行PHP,修改/etc/boa/boa.conf,修改

CGIPath为:CGIPath /bin:/opt/php5/bin

最后添加一行:

AddType application/x-httpd-cgi php

七、测试

在/www创建test.php

#!/opt/php5/bin/php

echo "X-Powered-By: PHP/5.2.17\n";

echo "Content-type: text/html\n\n";

?>

Hello!

echo $_SERVER["QUERY_STRING"];

?>

在浏览器中能够打开!

注意:

按上述弄好之后,在命令行下执行php-cgi彻底正常,但写成脚本就是不行,最后发现只能用php,即脚本最前面一行必须是:

#!/opt/php5/bin/php

而不能是

#!/opt/php5/bin/php-cgi

那么每一个文件最前面必须用下面几行返回必须的文件头了:

echo "X-Powered-By: PHP/5.2.17\n";

echo "Content-type: text/html\n\n";

?>

原本这个能够由php-cgi完成就能够了,可是如今必须本身作一下了。

这能够我通过半下午才总结出来的呀,不知道什么地方的毛病呢!

 类似资料: