版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 嵌入式Linux環(huán)境下Web頁面技術(shù)的實(shí)現(xiàn)</p><p> 摘 要:介紹了通用網(wǎng)關(guān)接口(CGI)技術(shù)的工作原理,并選用Boa Server作為Web服務(wù)器,給出嵌入式Linux環(huán)境下的Web服務(wù)器參數(shù)配置方法,并利用該方法在S3C2410硬件開發(fā)板中實(shí)現(xiàn)了具體的Boa服務(wù)器環(huán)境,給出了一個具體的CGI應(yīng)用實(shí)例。 </p><p> 關(guān)鍵詞:嵌入式WEB;通用網(wǎng)
2、關(guān)接口 ;Boa ;Web服務(wù)器 </p><p> 1 通用網(wǎng)關(guān)接口技術(shù) </p><p> CGI(Common Gateway Interface)是實(shí)現(xiàn)Web頁面技術(shù)的關(guān)鍵所在,其定義是Web服務(wù)器與外部應(yīng)用程序之間通信的標(biāo)準(zhǔn)接口。與專用編程接口相比具有以下優(yōu)點(diǎn): </p><p> ①獨(dú)立于服務(wù)器體系結(jié)構(gòu)和編程語言。編程者可以自由選擇適合于特定
3、編程任務(wù)的語言。 </p><p> ?、谔峁┩暾倪M(jìn)程隔離機(jī)制。CGI程序獨(dú)立于Web服務(wù)器,運(yùn)行在自己的進(jìn)程地址空間,只與服務(wù)器交換接口信息,從而保證了服務(wù)器免受出錯CGI進(jìn)程的影響和用戶的有意試探,提高了安全性和穩(wěn)定性。 </p><p> CGI主要功能是在Web環(huán)境下,將WWW與Web數(shù)據(jù)庫集成在一起,順利地實(shí)現(xiàn)了動態(tài)Web頁面查詢。從用戶端瀏覽器傳遞一些指令或參數(shù)給Web
4、服務(wù)器,CGI 腳本通過標(biāo)準(zhǔn)輸入STDIN獲得輸入信息,最后使用STDOUT輸出HTML形式的結(jié)果文件,經(jīng)Web服務(wù)器送回瀏覽器顯示給用戶。由于用戶能傳遞不同的參數(shù)給CGI 腳本,所以CGI技術(shù)使得瀏覽器和服務(wù)器之間具有很強(qiáng)交互性。 </p><p> 其具體工作過程如圖1所示。 </p><p> 其中,CGI與表單之間的信息交互方法有兩種模式:“GET”和“POST” 。選擇哪
5、一種模式取決于表單(FORM)的“METHOD”字段的設(shè)置,如果METHOD 設(shè)定為POST,數(shù)據(jù)會以STDIN 方式送入CGI接口;如果METHOD 設(shè)定為GET,數(shù)據(jù)會保存在QUERY_STRING的環(huán)境參數(shù)中,以供接口讀取。 使用GET方式編寫CGI 程序會更加簡單,但是POST 方式則更先進(jìn)。 </p><p><b> 2 運(yùn)行環(huán)境 </b></p><p
6、> 根據(jù)CGI 的工作機(jī)理,在嵌入式系統(tǒng)中構(gòu)建CGI運(yùn)行環(huán)境需要解決下面幾個主要工作: </p><p> (1) 軟硬件平臺: ARM處理器,以高性能、低功耗、低成本等優(yōu)點(diǎn)獲得大量。操作系統(tǒng)方面,Linux因其開源性、可裁剪,廣泛支持ARM體系結(jié)構(gòu),備受親睞。無疑本文采用ARM-Linux作為CGI的系統(tǒng)平臺是很好的選擇。 </p><p> (2) 合適的Web服務(wù)器:
7、目前的主流Web服務(wù)器,包括Apache ,httpd ,thttpd 和Boa等幾種。其中Boa開放源代碼,性能高,運(yùn)行所需空間僅為140KB左右,對CGI的支持效果最佳。因此,本文選擇Boa作為ARM-Linux系統(tǒng)的Web服務(wù)器。 </p><p> (3) 運(yùn)行環(huán)境配置:不同的Web服務(wù)器的配置方法大同小異,具體過程中需要考慮的因素有:CGI的默認(rèn)啟動路徑配置,CGI服務(wù)器根路徑(SERVER-ROO
8、T) 配置,CGI 腳本路徑動態(tài)參數(shù)配置,CGI 源碼路徑配置。 </p><p> (4) 交叉編譯生成目標(biāo)機(jī)模塊:在宿主機(jī)中完成了全部的配置工作后,需要利用特定平臺的交叉編譯工具來生成特定平臺的交叉編譯模塊,然后再下載到目標(biāo)機(jī)。 </p><p> 3 Web服務(wù)器Boa在ARM-Linux平臺上的構(gòu)建 </p><p> 選用ARM-Linux平臺
9、作為嵌入式系統(tǒng)CGI,在S3C2410開發(fā)板上構(gòu)建Boa服務(wù)器的具體過程為: </p><p> 3.1 對Boa源碼進(jìn)行交叉編譯 </p><p> 此過程中需要在/boa/src/configure文件中添加CC與CPP交叉編譯選項(xiàng),同時還要對Makefile文件中CC與CPP選項(xiàng)做同樣的改動。在Redhat虛擬操作系統(tǒng)下:CC=/opt/host/ armv4l/bin/ar
10、mv4l-unknown-linux-gcc;CPP =/opt/host/armv4l/bin/armv4l-unknown-linux.cpp,然后make即可生成所需平臺的Boa可執(zhí)行文件。 </p><p> 3.2 Boa的配置 </p><p> Boa的配置是在boa.conf文件里進(jìn)行設(shè)定,該文件是一個文本文件,由一些規(guī)則組成,用于配置Boa 服務(wù)器時指定相應(yīng)接口、
11、服務(wù)器名稱、一些相關(guān)文件路徑等。對其具體修改如下: </p><p> ?、賹ser nobody改為User 0 </p><p> ?、趯roup nogroup 改為Group 0 </p><p> ③將DocumentRoot/var/www改為DocumentRoot/home/httpd/html </p><p&g
12、t; ?、芏xCGI 程序所在的目錄:ScriptAlias/cgi2bin/home/httpd/cgi2bin/ ⑤定義默認(rèn)頁面文件,配置后的Boa服務(wù)器將/home/ httpd 作為服務(wù)器的根目錄,CGI 程序放在/home/httpd/cgi2bin目錄下,靜態(tài)網(wǎng)頁文件放在/home/ httpd/html 目錄下 </p><p> 接著將生成的Boa 可執(zhí)行文件加入到ramdisk中的/bin/
13、下,并把修改后的boa. conf拷貝到Web服務(wù)器根目錄/home/httpd/下。 </p><p> 3.3 重新編譯內(nèi)核 </p><p> 將編譯好的內(nèi)核下載到開發(fā)板,啟動Boa Web Server,然后就可以通過IE瀏覽器在用戶端訪問目標(biāo)板中的網(wǎng)頁。 </p><p><b> 4 應(yīng)用實(shí)例 </b></p>
14、;<p> 本文整個測試環(huán)境由一個S3C2410嵌入式開發(fā)板 ,一臺Windows PC機(jī)組成,一個人用來獲取數(shù)據(jù)的讀寫器組成,搭建了ARM9平臺上的CGI運(yùn)行環(huán)境,并舉出了利用IE瀏覽器訪問開發(fā)板上的RFID標(biāo)簽數(shù)據(jù)庫,實(shí)現(xiàn)對RFID標(biāo)簽數(shù)據(jù)的嵌入式動態(tài)Web查詢的應(yīng)用實(shí)例。測試環(huán)境如圖2所示。 </p><p> 在測試時,配置IP 分別為192.168.10.1,192.168.10.2
15、。開發(fā)板和宿主機(jī)之間通過網(wǎng)線連接.通過瀏覽器點(diǎn)擊192.168.10.1,并設(shè)置相關(guān)參數(shù),就可以查詢到原始的標(biāo)簽數(shù)據(jù)列表。測試結(jié)果如圖3所示。 </p><p><b> 5 結(jié)語 </b></p><p> 本文對嵌入式Linux環(huán)境下的Web服務(wù)及CGI的工作機(jī)理進(jìn)行了分析,提出了在嵌入式ARM-Linux環(huán)境下Boa Server 的實(shí)現(xiàn)方法,使用戶在瀏覽
16、器端對指定的嵌入式設(shè)備進(jìn)行遠(yuǎn)程操作。雖然不同的嵌入式系統(tǒng)往往會選用不同硬件平臺以及操作系統(tǒng),但是對于嵌入式系統(tǒng)環(huán)境下CGI腳本的開發(fā)方法和Web服務(wù)器的構(gòu)建,本文都給出了一個較好的思路。 </p><p><b> 參考文獻(xiàn) </b></p><p> ?。?]黃光奇.CGI編程指南[M].電子工業(yè)出版社,1999. </p><p>
17、; ?。?]馬曉光.組建Linux服務(wù)器[M].人民郵電出版社,2001,(4). </p><p> ?。?]張斌,高波. Linux平臺下的Web 編程[M].清華大學(xué)出版社,2000,(10). </p><p> ?。?]王剛,陳西宏.基于Linux的動態(tài)Web技術(shù)研究[J].計算機(jī)應(yīng)用研究, 2001,(9). </p><p> ?。?]薛
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 嵌入式Linux系統(tǒng)及Web服務(wù)器實(shí)現(xiàn).pdf
- 嵌入式linux環(huán)境下音頻質(zhì)量提高方法的研究和實(shí)現(xiàn)
- 嵌入式Linux下IPSec的研究與實(shí)現(xiàn).pdf
- 嵌入式Linux環(huán)境下基于Web服務(wù)的遠(yuǎn)程視頻控制系統(tǒng).pdf
- 基于嵌入式linux的web服務(wù)器的研究與實(shí)現(xiàn)
- 嵌入式Linux下GUI的設(shè)計和實(shí)現(xiàn).pdf
- 嵌入式基于linux下電子閱讀器的實(shí)現(xiàn)
- 嵌入式Linux環(huán)境下音頻質(zhì)量提高方法的研究和實(shí)現(xiàn).pdf
- 基于嵌入式linux在web上的運(yùn)用
- 嵌入式Linux環(huán)境下蒙文編輯器的設(shè)計與實(shí)現(xiàn).pdf
- 嵌入式Linux環(huán)境下與文本有關(guān)的說話人確認(rèn)系統(tǒng)實(shí)現(xiàn).pdf
- 基于Linux的嵌入式Web服務(wù)器的實(shí)現(xiàn)與應(yīng)用.pdf
- 基于Linux嵌入式Web服務(wù)器的研究與實(shí)現(xiàn).pdf
- 嵌入式linux藍(lán)牙技術(shù)研究及實(shí)現(xiàn).pdf
- 嵌入式Linux內(nèi)核調(diào)試技術(shù)的研究與實(shí)現(xiàn).pdf
- Linux環(huán)境嵌入式電子海圖顯示研究與實(shí)現(xiàn).pdf
- 嵌入式Linux下3D渲染技術(shù)的研究與實(shí)現(xiàn).pdf
- 嵌入式Linux下多媒體實(shí)驗(yàn)系統(tǒng)的軟件實(shí)現(xiàn).pdf
- 基于嵌入式Linux環(huán)境的主從USB驅(qū)動技術(shù).pdf
- 嵌入式linux系統(tǒng)中http協(xié)議的實(shí)現(xiàn)方法研究-嵌入式論文
評論
0/150
提交評論