linux如何移植goaheadweb服务器,GoAhead WebServer移植

  • Post author:
  • Post category:linux


GoAhead  WebServer,它是一个源码免费、功能强大、可以运行在多个平台的嵌入式WebServer。

GoAhead WebServer的主要特性有:

1.  支持 ASP;

2.  嵌入式的javascript;

3.  标准的 CGI执行;

4.  内存中的 CGI处理GoFroms;

5.  扩展的 API;

6.  快速响应,每秒可处理超过 50个请求;

7.  完全和标准兼容;

8.  如果不包含 SSI,仅要求 60K 的内存;包含 SSI,要求500K 内存;

9.  web 页面可以存在ROM或文件系统中;

10.  支持多种操作系统,包括 eCos  、LINUX  、LynxOS  、QNX  、VxWorks  、WinCE、pSOS等;

GoAhead  WebServer 2.1.8移植:

1.下载源文件 http://www.goahead.com ;

2. 解压源文件,进入源文件目录下找到web文件夹,进入目录:web/docs/user,可以查看相关的编译信息和帮助;

3. 按照上面查看的编译指示,把源文文件编译成相应的平台的可执行程序;

windows平台:打开VC++,打开源文件目录下WIN目录的webs.dsw,编译,如果没有错则完成,执行webs.exe,在浏览器输入http://or,访问,可看到默认的home.asp;

Linux平台:前提已安装了GCC,打开终端,进入源文件目录下LINUX目录,(如果有必要的话应修改Makefile,主要是定位编译器等工具路径)make编译,出现错误:

main.o: In function `websGetCgiCommName’:

/LINUX/main.c:325: warning: the use of `tempnam’ is dangerous, better use `mkstemp’

解决办法:

找到main.c (/LINUX目录) 文件,在函数websGetCgiCommName(..)函数中:

char_t  *pname1, *pname2;

//pname1 = tempnam(NULL, T(“cgi”));                        //注释掉

pname1 = (char_t *)mkstemp(T(“cgi”));            //增加

再次重新make,下常编译成功,即可运行./webs,完成;

4.goahead服务器移植完成,对于默认页面可修变,具体查看web/docs下的相关信息;

GoAhead 的详细介绍:请点这里

GoAhead 的下载地址:请点这里

相关阅读:

0b1331709591d260c1c78e86d0c51c18.png