APPWeb+PHP5+SQLite3在S3C6410上移植
50个页面请求。
l支持CGI;支持动态WEB页面,如PHP页面;支持嵌入式的JavaScript;支持安全的通信,如SSL(OpenSSL或MatrixSSL)
l支持单线程和多线程运行模式。
1 修改配置参数
Appweb采用稳定版本appweb-src-3.3.2(4.0版本编译时可能会出现问题)。AppWeb的配置参数如下:
./configure--host=arm-s3c6410-linux --build=i686-pc-linux --port=80 --type=RELEASE--disable-multi-thread --disable-access-log --disable-test --with-cgi=builtin --with-copy=builtin --with-auth=builtin--with-esp=builtin --with-upload=builtin --webDir=/www --with-ejs=builtin--with-php=/home/hwwr/share/php-5.2.17/--with-matrixssl=/home/hwwr/share/ssl/matrixssl/matrixssl-1-8-8-open/--sysconfdir=/WebServer --prefix=/WebServer
注意:由于PHP被编译为单线程模式,所以AppWeb必须禁用多线程模式,即加入配置参数--disable-multi-thread。
以上配置产生用于编译的Makefile文件,并生成相关服务程序、动态库以及模块;如果只需要静态文件则可加入--disable-shared --enable-static,编译后生成的服务程序较大,只生成静态库,没有模块,所以推荐生成动态版本。
选项--webDir用于指定网站的存放位置,webDir默认值为/var/www/appweb-default。通过上述配置,服务器的网站根目录为/www,默认http端口号为80。
选项--sysconfdir用于设置配置文件的安装位置,--prefix指定AppWeb可执行文件和相关库的安装位置。另外,AppWeb可执行文件被复制到/etc/init.d目录下。
2编译AppWeb
Configure执行成功后,生成Makefile文件,此时直接在终端运行make命令进行编译,编译完成之后,将在appweb-3.3.2目录下的bin、lib、modules子目录中生成arm-s3c6410-linux文件夹,该目录中包含生成的可执行文件、库文件及模块。
执行make install命令进行安装,安装完成,将生成/WebServer/appweb配置文件夹、/WebServer /lib/appweb脚本文件,更多文件信息可参考/WebServer /lib/appweb目录下的fileList.txt文件。
3将AppWeb移植至网关
将生成的WebServer目录复制到网关根目录下,打开/ WebServer /appweb中的配置文件appweb.conf,并确认如下信息是否正确。
Listen80
DocumentRoot"/www"
DirectoryIndexindex.html
LoadModulePath"/ WebServer /lib/appweb/modules"
以上信息与编译时的配置参数相关,参数DirectoryIndex用于设置默认起始页。
将主机/etc/init.d/appweb目录复制到网关/etc/init.d目录下。
4配置AppWeb
首先,注销(删除)配置文件/WebServer /appweb/appweb.conf中Groupnogroup语句,否则运行时将报错。
配置matrixssl加密服务支持。修改/WebServer /appweb/appweb.conf文件,在Include conf/modules/*语句之后(对模块的定义必须在该标记之后)增加如下语句:
Listen 443 # SSL - dont remove comment
LoadModule sslModule mod_ssl
DocumentRoot "/www"
SSLEngine on
# SSLCipherSuiteALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
# SSLCipherSuite HIGH:RC4+SHA
# Use an RC4-SHA cipher to mitigate theBEAST attack
SSLCipherSuite HIGH:RC4+SHA
SSLProtocol ALL -SSLV2
SSLCertificateFile "/ WebServer/appweb/ssl/server.crt"
SSLCertificateKeyFile "/ WebServer/appweb/ssl/server.key.pem"
设置https监听443端口(即浏览器默认安全端口),SSL证书位于/WebServer /appweb/ssl目录下,注意:该证书已经过期,所在使用https访问时,出现如下安全提示:
选择“继续浏览网站”忽略该提示即可。
配置error log(日志消息),在调试期间,配置appweb应允许记录系统运行日志,如需取消则在./configure时加入--disable-log配置参数。
修改/WebServer/appweb/conf目录下的log.conf文件,配置如下:
ErrorLog“/log/appweb/error.log”
LogLevel4
即配置日志保存于/log/appweb下的error.log文件,所以必须在网关根目录下创建/log/appweb/error.log文件。
配置doc(在线文档),在开发阶段可以使用此功能。修改/ WebServer /appweb/conf目录下的doc.conf文件,配置如下:
Alias /doc/ "$DOCUMENT_ROOT/doc/"
将doc目录定位于网站根目录下。
配置CGI,修改/WebServer/appweb/conf/modules目录下的cgi.conf文件,配置如下:
LoadModulecgiHandler mod_cgi
AddHandlercgiHandler .exe .cgi .cgi-nph .out .bat .cmd .pl .py
ScriptAlias/cgi-bin/ "$DOCUMENT_ROOT/cgi-bin"
APPWebPHP5SQLite3S3C641 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)