北京电子科技学院(BESTI)

              

课程:信息安全系统设计基础                     班级: 201353

姓名:刘世鹏 郝爽

学号:20135304 20135335

成绩:             指导教师:   娄嘉鹏  实验日期:2015.12.1

实验密级:         预习程度:             实验时间:15:30~18:20

仪器组次:          必修/选修:       必修          实验序号:5

实验名称:简单嵌入式WEB服务器实验

实验目的与要求:1.掌握在 ARM 开发板实现一个简单 WEB 服务器的过程。

2.学习在 ARM 开发板上的 SOCKET 网络编程。

3.学习 Linux 下的 signal()函数的使用

实验仪器:

名称

型号

数量

ARM开发板

UP-NETARM2410-CL

1

PC

Windows Xp

1

一、实验内容:

①代码理解:

1)解析客户请求:int ParseReq(FILE *f, char *r)

char *r :字符串指针,待解析的字符串。

2)发送 HTTP协议数据头:int PrintHeader(FILE *f, int content_type)

int content_type:信息类型,用于确定发送的 HTTP 协议数据头信息

3)发送当前目录文件列表信息:int DoDir(FILE *f, char *name)

char *name:目录名,表示客户请求的目录信息。

4)发送 HTML文件内容:int DoHTML(FILE *f, char *name)

char *name:客户请求的文件名

5)发送纯文本(TXT)文件内容:int DoText(FILE *f, char *name)

char *name:客户请求的文件名

6)发送 JPEG图像文件内容:int DoJpeg(FILE *f, char *name)

char *name:客户请求的文件名

7)发送 GIF图像文件内容:int DoGif(FILE *f, char *name)

char *name:客户请求的文件名

②按照实验一配置好NFS服务。

③进入red hat系统中,进入07_httpd目录,使用make产生可执行文件httpd。

④在超级终端上输入mount –t nfs –o nolock 192.168.0.23:/arm2410cl                 /host(注意在/host前存在空格),创建链接。

⑤输入cd  /host/exp/basic/07_htttpd/ 进入07_httpd目录

⑥输入./httpd,运行httpd可执行文件,出现以下提示语句:

starting httpd...

press q to quit.

wait for connection

⑦打开本机浏览器输入http://192.168.0.16,出现所需页面

二、实验原理理解

1.该WEB服务器能实现的功能?

获取服务器当前目录文件列表、获取指定文件、获取HTML类型文件、获取纯文本文件、获取JPG图像文件、获取GIF图像文件。

2.HTTP协议数据头格式要求

1)请求格式:

请求行-通用信息头-请求头-实体头-报文主体

2)响应格式:

状态行-通用信息头-响应头-实体头-报文主体

3.为何采用SOCKET?

SOCKET用于描述IP地址和端口,是一个通信链的句柄,可以用来实现不同虚拟机或不同计算机之间的通信。

三、实验过程中遇到的问题以及解决方案

make出现问题通过与其他同学交流发现仅仅为最后一个生成httpd可执行文件语句出错,则补上armv4l-unknown-linux-gcc -o httpd httpd.o copy.o –lpthread即可。

四、实验体会:

本次实验建立在实验四搭建好的实验平台基础上;而且,有了之前实验经验,此次试验比较顺利。

LINUX第五次实验报告的更多相关文章

  1. 20145240 《Java程序设计》第五次实验报告

    20145240 <Java程序设计>第五次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1452 指导教师:娄嘉鹏 实验日期:2016.05.06 实验 ...

  2. 20145330《Java程序设计》第五次实验报告

    20145330<Java程序设计>第五次实验报告 实验五 Java网络编程及安全 实验内容 1.掌握Socket程序的编写: 2.掌握密码技术的使用: 3.设计安全传输系统 4.结队伙伴 ...

  3. 20145320《Java程序设计》第五次实验报告

    20145320<Java程序设计>第五次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.05.06 18: ...

  4. Java第五次实验报告

    Java第五次实验报告 实验一 实验内容 两人一组结对编程: 参考 结对实现中缀表达式转后缀表达式的功能 MyBC.java 结对实现从上面功能中获取的表达式中实现后缀表达式求值的功能,调用MyDC. ...

  5. 第五次实验报告 java 网络编程

    20145306 第五次 java 实验报告 实验内容 客户端与服务器连接,客户端中输入明文,利用DES算法加密,DES的秘钥用RSA公钥密码中服务器的公钥加密,计算明文的Hash函数值,一起传送给客 ...

  6. 20145317彭垚 《Java程序设计》第五次实验报告

    20145317彭垚实验五 Java网络编程及安全 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.05.06 18:30-21: ...

  7. 《JAVA程序设计》第五次实验报告

    20145333 实验五 Java网络编程及安全 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.05.06 18:30-21:3 ...

  8. 20165210 Java第五次实验报告

    20165210 实验五 网络编程与安全 网络编程与安全一: 实验要求: 两人一组结对编程: 参考http://www.cnblogs.com/rocedu/p/6766748.html#SECDSA ...

  9. 第五次实验报告:使用Packet Tracer理解OSPF路由协议

    目录 1 实验目的 2 实验内容 3. 实验报告 3.1 建立网络拓扑结构 4. 配置 4.1 配置并激活串行地址和以太网地址 4.1.1 R1 4.1.2 R2 4.1.3 R3 4.1.4 PC ...

随机推荐

  1. UVa 103 - Stacking Boxes(dp求解)

    题目来源:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=3&pa ...

  2. This is usually caused by using Struts tags without the associated filter. Struts tags are only usable when the request has p

    2014-09-16 15:47:51.590:WARN:oejs.ErrorPageErrorHandler:EXCEPTION org.apache.jasper.JasperException: ...

  3. Monyer's game Google Hack关的BT玩法

    玩Monyer's game的朋友都知道里面有Google Hack这关,其实这里本来应该用到的技术是逆向回溯搜索,但因为有好几个人都说利用其他方式看到的密码,所以Monyer不得不重新站在玩家的角度 ...

  4. IE下实现打印功能

    先贴代码: <html> <head> <style type="text/css"> *{margin:0px;padding:0px;} . ...

  5. openwrt简单ipk生成及Makefile解释

    前言 类似的文章其实网上比较多了,我写这个的目的: 1,网上文章良莠不齐,有些自己都没实际动手操作,随便复制粘贴,实际操作不可行. 2,基本只讲了操作,我当时最关心的Makefile文件的解释没有. ...

  6. 关于点击空白关闭弹窗的js写法推荐

    $(document).mouseup(function(e){ var _con = $(' 目标区域 '); // 设置目标区域 if(!_con.is(e.target) && ...

  7. WordCount Analysis

    1.Create a new java project, then copy examples folder from /home/hadoop/hadoop-1.0.4/src; Create a ...

  8. display:-webkit-box

    Flexbox 为 display 属性赋予了一个新的值(即 box 值), flexbox的属性有很多,记录一些比较常用的属性: 用于父元素的样式: display: box; 该属性会将此元素及其 ...

  9. OpenStack三个节点icehouse-gre模式部署

    一.环境准备 1.架构 创建3台虚拟机,分别作为controll节点.network节点和compute1节点. Controller节点:1processor,2G memory,5G storag ...

  10. SDRAM总结

    使用的流程 W9825G6JH winbond sdram 4M words X 4banks X 16bits=. Accesses to the SDRAM are burst oriented. ...