Linux第五次實驗

北京電子科技學院(BESTI)linux

              編程

課程:信息安全系統設計基礎                     班級: 201352         瀏覽器

姓名:池彬寧 賀邦安全

學號:20135212 20135208服務器

成績:             指導教師:   婁嘉鵬  實驗日期:2015.12.1網絡

實驗密級:         預習程度:             實驗時間:15:30~18:20函數

儀器組次:          必修/選修:       必修          實驗序號:4學習

實驗名稱:簡單嵌入式WEB服務器實驗                                                            ui

實驗目的與要求:1.掌握在 ARM 開發板實現一個簡單 WEB 服務器的過程                                                 spa

2.學習在 ARM 開發板上的 SOCKET 網絡編程              

3.學習 Linux 下的 signal()函數的使用                                                     

實驗儀器:

名稱

型號

數量

ARM開發板

UP-NETARM2410-CL

1

PC

Windows Xp

1

 

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.121,出現如下頁面

 

2、實驗原理理解

      1.該WEB服務器能實現的功能?

           獲取服務器當前目錄文件列表、獲取指定文件、獲取HTML類型文件、獲取純文本文件、獲取JPG圖像文件、獲取GIF圖像文件。

      2.HTTP協議數據頭格式要求

           1)請求格式:

                 請求行-通用信息頭-請求頭-實體頭-報文主體

           2)響應格式:

                 狀態行-通用信息頭-響應頭-實體頭-報文主體

      3.爲什麼採用SOCKET?

                 SOCKET用於描述IP地址和端口,是一個通訊鏈的句柄,能夠用來實現不一樣虛擬機或不一樣計算機之間的通訊。

3、實驗過程當中遇到的問題以及解決方案

      1.make出錯

           發現僅僅爲最後一個生成httpd可執行文件語句出錯,則補上armv4l-unknown-linux-gcc -o httpd httpd.o copy.o –lpthread便可。

4、實驗體會:

      因爲已是最後一個實驗了,大部分的步驟都進行的很順利,對於出現的實驗結果也是感到很驚喜,但後來一想,這種反映是由於本身並未弄清楚代碼的含義,本身照着指導書一步一步地來的結果,在對代碼有了解後,發現本身當初的驚喜多麼可笑的反應。經過這幾回實驗也培養了良好的協做能力,體會到了1+1>2的感受。

相關文章
相關標籤/搜索