(1)編寫網頁檔案
(2)生成乙個*.c原始檔,例如lwip,uip 均是通過fsdata生成,該*.c檔案裡面內容主要是很多陣列,每個陣列對應乙個網頁或,並通過鍊錶結構把陣列鏈結起來。
(3)確定入口預設網頁
(4)網頁輸出--即將嵌入式模組的資訊顯示到web上 (ssi)
方法:收到"get"命令後,在接受的資料中查詢顯示資訊對應的標籤,並用自己的「資訊」替換即可
例如web原始碼中有溫度標籤"tag:tmp1"
tag:tmp1℃
類似**
itoa(cpu_temperature%100, text+i, 10);
replace_tag(outbuf + 54, "tag:tmp1", text);
(5)網頁輸入--即將頁面的資訊輸入到嵌入式模組中 (cgi)
方法:收到"post"命令後,在接受的資料查詢"name=", 再對=後字串進行解析
例如web原始碼中有"name=switch"
" 滅 類似**
ptr = strstr(tcp_data, "switch=");
if (*ptr == '1')
else if (*ptr == '0')
ssi簡介:
ssi(server side include),通常稱為伺服器端嵌入,是一種類似於asp的基於伺服器的網頁製作技術。大多數(尤其是基於unix平台)的web伺服器如netscape enterprise server等均支援ssi命令。
在乙個通常以.shtml為副檔名的ssi檔案中,標準的html編碼會被直接送到瀏覽器上,而內嵌perl語言形式的ssi命令則先被網路伺服器解釋執行,如果是標準輸出的話,輸出資訊也將作為標準的html而被送至瀏覽器。
ssi簡單應用例項:
〈html〉
〈head〉〈title〉my first ssi page〈/title〉〈/head〉
〈body〉
歡迎您(於〈!--# echo var="date_local" --〉)訪問本**。
〈/html〉
標記在上面文件中的「〈!--# --〉」結構表明了ssi命令會被伺服器翻譯執行,而不是直接送到客戶端。我們可以在瀏覽器中用「檢視→原始檔"觀察源**:
〈html〉
〈head〉〈title〉my first ssi page〈/title〉〈/head〉
〈body〉
歡迎您(於dec 06 1999)訪問本**。
〈/html〉
我們發現,文件中的html被直接傳到了客戶端,而ssi命令得到了執行。ssi**在客戶端是不可見的,客戶端只能看到它執行的效果。
cgi簡介
common gateway inte***ce,簡稱cgi。在物理上是一段程式
,執行在伺服器
上,提供同客戶端
把這些資訊傳送到伺服器
的cgi目錄下特定的cgi程式
中,於是cgi程式在伺服器上按照預定的方法進行處理。
lwip較新**
嵌入式Web伺服器移植
或者 最新發行版本 0.94.13 解壓 tar xzf boa 0.94.13.tar.gz 直接執行src configure檔案 a 修改 cc gcc 為 cc usr local arm 2.95.3 bin arm linux gcc b 修改 cpp gcc e 為 cpp usr l...
嵌入式Web伺服器移植
文章一僅供個人學習之用,請勿用於他途。n printf n printf n printf n printf n exit 0 交叉編譯生成helloworld.cgi arm softfloat linux gnu gcc o helloworld.cgi helloworld.c 將hellow...
嵌入式web伺服器的實現
1 引言 呼叫 open 開啟裝置,利用 ioctl 對裝置進行控制,比如設定對比度 亮度 調色盤,訪問模式等等。主要 如下 int fd open dev v4l video0 o rdwr 開啟裝置 獲取裝置的基本資訊 裝置名稱 支援的最大最小解析度 訊號源資訊等 ioctl vd fd,vid...