文件准备
配置交叉编译环境
- 切换到超级用户:
sudo su
- 解压交叉编译器,这里解压到:
/opt
中 export PATH=$PATH:/opt/opt/FriendlyARM/toolschain/4.5.1/bin
配置GoAhead文件
- 解压webs218.tar.gz后得到ws031202文件夹
- 进入ws031202/LINUX中,修改Makefile文件:(在开头加入如下2行,将最后一行的cc改为$(CC))
CC = arm-linux-gcc
AR = arm-linux-ar
- 然后修改main.c文件(修改服务器文件位置,端口,注释gethosetname那部分,添加主机IP并修改显示的首页)
static char_t *rootWeb = T("/web"); //设置网站文件夹位置
static int port = 81; //设置端口
/*
* Define the local Ip address, host name, default home page and the
* root web directory.
*/
//注释下面这段
/*
if (gethostname(host, sizeof(host)) < 0) {
error(E_L, E_LOG, T("Can't get hostname"));
return -1;
}
if ((hp = gethostbyname(host)) == NULL) {
error(E_L, E_LOG, T("Can't get host address"));
return -1;
}
memcpy((char *) &intaddr, (char *) hp->h_addr_list[0],
*/
/*
* Set ../web as the root web. Modify this to suit your needs
*/
//添加这句,IP地址为开发板web服务器地址
intaddr.s_addr = inet_addr("192.168.1.230");
//修改默认主页,修改为index.html
static int websHomePageHandler(webs_t wp, char_t *urlPrefix, char_t *webDir,
int arg, char_t *url, char_t *path, char_t *query)
{
/*
* If the empty or "/" URL is invoked, redirect default URLs to the home page
*/
if (*url == '\0' || gstrcmp(url, T("/")) == 0) {
websRedirect(wp, T("index.html"));
return 1;
}
return 0;
}
- 修改ws031202中的misc.c文件(注释掉strnlen函数的声明与实现)
进入ws031202/LINUX中,执行
make clean
,make
生成一个webs和libwebs.a文件
上传到开发板
- 将webs文件放到开发板的/usr/sbin
- 将libwebs.a文件放到开发板的/lib
- 将ws031202中的web文件夹复制到main.c设定好的位置,这里是开发板的/web
- 开发板执行
webs &
启动服务器 - 浏览器访问
192.168.1.230:81