天天看點

GoAhead 基于C語言的嵌入式WEB Server

GoAhead

https://www.embedthis.com/goahead/download.html

GoAhead基于C語言的嵌入式WEB Server,由Embedthis公司維護,實作了服務端的嵌入式Javascript、CGI、DHTML,支援檔案上傳,,

網上資料比較多,最新V3.4.3源碼在這。

GoAhead本身自帶Windows、Linux、各種RTOS的移植子目錄檔案,其他伺服器公共子產品移植性做的很好,可不使用檔案系統而将所有WEB資源檔案ROM化,是學習進階C語言的很好例子。若開發linux平台下的web監控,你可以利用windows下的vs先調試好JS+CSS前端,再去linux平台下解決資料互動層面的問題。

1. 需求分析

需要在裝置内部內建WEB管理功能,類似于家用路由器,通過網頁浏覽器登陸裝置,實作對裝置進行狀态監視、參數設定、固件更新等功能。

硬體條件:裝置内部主要制器的嵌入式CPU普遍低端,主頻隻有幾百兆,記憶體有128M的,也有的隻有幾百K片上配置,WEB管理功能的內建不能影響裝置網絡主業務性能,可能無檔案系統。

輕量級 WEB Server

首先要找一個合适的輕量級的WEB Server,最好是C/C++實作的,有OS和沒有OS都能友善移植。WEB Server不需要太複雜,能支援1種動态語言,提供良好的CGI接口。

裝置管理架構 Device Manager Framework

以輕量級的WEB Server為基礎,提供一個裝置管理架構,可通過代碼直接定制目錄結構,可直接修改模闆增減狀态和配置頁面。

使用AJAX等技術實作不重新加載頁面的情況下,重新整理網頁局部,實作裝置狀态“實時”監視功能。

111