第11课 网络服务
11.1 在uClinux下安装boa
主要有三个Web 服务器:httpd、thttpd和Boa。httpd是最简单的一个Web 服务器,它的功能最弱,不支持认证,不支持CGI。thttpd和Boa都支持认证、CGI等,功能都比较全。若需提高系统的安全性,或需要与用户进行交互,例如数据查询、实时状态查询等,则必须使用动态Web技术,可以选择这两种服务器之一来实现。
接下来安装Boa服务器,在目录/work/Uclinux-dist下执行:sudo make xconfig,选择“User Setting”进行应用程序的配置,Network Applicatons->boa选择yes。如下图:
第二,增加路径:修改/uClinux-dist/vendors/Marvell/Firefox/Makefile文件,在ROMFS_DIRS=…后添加如下路径:
第三。修改/work/uClinux-dist/user/boa/src /config.c文件,将
auth_add(“/cgi-bin/”, “/etc/config/config” );注释掉,添加auth_add(“/cgi-bin/”, “/etc/passwd” );如下图:
然后修改/uClinux-dist/vendors/Marvell/Firefox/rc.net文件,在文件尾添加/bin/boa &,如下图:
第三,添加网络页面,将1-Basic文件夹里的index.html, cornerbg.gif, main.css三个文件复制到目录/work/uClinux-dist/user/cgi_generic里,这是从winndows操作系统复制到linux系统,采用的方法与第一节课的方法,从共享文件夹下复制。
修改/work/uClinux-dist /user/cgi_generic/Makefile文件。增加:
$(ROMFSINST) /home/httpd/index.html
$(ROMFSINST) /home/httpd/main.css
$(ROMFSINST) /home/httpd/cornerbg.gif
如下图:
烧录到开发板以后,在浏览器的地址栏里输入:192.168.0.1
接下来添加登录验证:
需要修改一些文件,第一,修改/work/uClinux-dist/user/boa/src/defines.h,将#undef ROOT_AUTH修改为#define ROOT_AUTH,如下图:
修改/work/uClinux-dist/user/boa/src/config.c文件,将auth_add(“/index.html/”, “/etc/config/config” );修改为auth_add("/index.html/", "/etc/passwd" );将auth_add(“/”, “/etc/config/config” );修改为auth_add("/", "/etc/passwd" );如下图:
修改/uClinux-dist/vendors/Marvel/Firefox/passwd文件,如下:
此时在烧进开发板里,登录192.168.0.1
这时候需要进行密码验证,输对了密码以后,进入到这个页面。
11.2 添加动态网页和框架
将3-Dynamic文件夹里的文件拷贝到/work/uClinux-dist/user/cgi_generic里,然后将他下进开发板里,同样登录192.168.0.1
然后再将4-Menu&frame文件夹里的内容复制到/work/uClinux-dist/user/cgi_generic里,编译以后,下载到开发板,此时,页面出现了框架
由于程序并不完整,选项里的内容没有,故打不开。
11.3 总结
这节课给我们展现了用boa搭建网络服务的方法,实验展显出来的是一个路由器设置的界面,非常具有代表性,对嵌入式的开发有了更浓厚的兴趣。
posted on 2018-10-23 15:31 Liu_Farrell 阅读(899) 评论(0) 收藏 举报