關於 boa webserver 是否支持 cookie

火星人 @ 2014-03-05 , reply:0
←手機掃碼閱讀

關於 boa webserver 是否支持 cookie

>>計算機與數字工程 第33卷《Boa源碼分析及其在嵌入式系統中的應用》一文提及
>>boa 不支持 cookie 的說 法,與之前答網友 boa 支持cookie 的說法矛盾,引起網友質疑。

下面是關於此文的討論,希望對大家理解和應用 boa 有所幫助:

提要:
1. 上文認為 boa 不支持cookie技術, 是論文作者對 cookie 技術的一種誤解.
2. 論文中還有其它幾處錯誤

hi, 你好!

   謝謝. 你的郵件已經收到.

   原文對添加 AUTH_NAME 進行多用戶認證的思想是很不錯地.
   不過對boa的認識還存在不少瑕疵.


Boa同樣也不支持Cookie,我們可以參考cgi
header. c中的process _ cgi_ header()函數,在其中
可以看到Boa並沒有處理與Cookie相關的頭部信
息。因此,即使向Boa發送了Set一Cookie頭信息
它也不會做任何事情,經過測試也確實如此。所以
這種方法也是不可行的。


   上文認為 boa 不支持cookie技術, 是論文作者對 cookie 技術的一種誤解.

   首先, Set-Cookie 是伺服器向瀏覽器發送的信息, 而非向 boa 發送的信息.
   boa 能接受的 Cookie 信息為: Cookie: name=value;...
   這是一處非常明顯的錯誤.
   
   其次, 在boa 源碼中未找到對 Cookie 頭的處理, 就果斷地斷定 boa 不支持
   cookie 是一種很不負責任的做法.

   在 CGI/1.1 標準中未對COOKIE 進行定義,
   在它在協議特殊元素(Protocol-Specific Metavariables)一節中, 指出
   webserver 必須用 "HTTP_" 開頭標記 HTTP協議的特殊元素. 其中 cookie 就
   在其中之列. 所以 HTTP_COOKIE 是伺服器傳遞給 CGI 程序的一個變數.

   boa 支持這一協議規定, 它將非CGI/1.1標準的元素用 "HTTP_" 頭標記. 這樣,
   當瀏覽器發送 Cookie 頭時, 將被自動轉換成 HTTP_COOKIE, 而非顯式地進行
   轉換, 所以在源代碼中不能找到任何 Cookie的影子.
   從 cgi.c 的 add_cgi_env() 函數可以證實這一點.  

   實踐證明, boa 支持 Cookie.


  論文中還有其它幾處錯誤:

但是由於Boa對於提交的信息不
論是用POST方法還是用GET方法都採用了同一
種處理手段,因此用戶所提交的信息任何人都可以
通過瀏覽器的地址欄看到。這就使得本來就很脆
弱的方法更加脆弱。這種方法也只能放棄。

這段話對 POST 和 GET 進行了不正確地描述.

首先, POST/GET 提交操作是由瀏覽器處理的, 而非 webserver. 能否出現在在地址欄中
與伺服器無任何關係.
HTTP 協議規定 GET的數據尾綴在 HTTP 協議頭的第一句中. POST的數據, 在HTTP體中單獨傳送.
所以只有 GET 方法提供的數據才會出現地址欄中, POST 則不會.

不知 boa 的什麼 "同一種處理手段" 能會影響到瀏覽器地址欄顯示 POST.

通過上面的討論, 希望對你有所幫助.

附件是: 《Boa源碼分析及其在嵌入式系統中的應用》

[ 本帖最後由 newzy 於 2006-12-4 14:23 編輯 ]
《解決方案》

積分不夠不能下載啊
《解決方案》

樓主,能不能賜教更詳細的關於WebServer源碼分析的資料,我分析好幾天了,只有源碼沒有文檔,進展不大,謝謝
《解決方案》

原帖由 星空浪子 於 2006-12-21 12:27 發表
積分不夠不能下載啊
加油呀, 多發幾個帖子就能看到了.

原帖由 xinglp 於 2006-12-21 18:18 發表
樓主,能不能賜教更詳細的關於WebServer源碼分析的資料,我分析好幾天了,只有源碼沒有文檔,進展不大,謝謝

源碼分析的文章在附件中, 你可以先下載下來看.
我只有這麼一份分析資料, 是一網友質問時發過來的.

如果遇到問題, 可以提出來, 大家幫你解決.

祝你好運!

[ 本帖最後由 newzy 於 2006-12-22 13:00 編輯 ]
《解決方案》

謝謝
《解決方案》

那麼BOA 可不可以和PHP一起在嵌入式系統中工作呢????????????
《解決方案》

php 4 及以前版本可以, 配置起來還是比較方便地
php5 及以後許多特性, 在 boa 等伺服器上都不能使用.
《解決方案》

學習了。




[火星人 via ] 關於 boa webserver 是否支持 cookie已經有173次圍觀

http://www.coctec.com/docs/service/show-post-39567.html