2016-12-28 27 views
0

我編寫了自己的DNS服務器,並將地址foo.bar解析爲127.0.0.1。在這個相同的文件中,我也運行一個HTTP服務器,使用Python中的BaseHTTPServer和一個自定義的請求處理程序。從瀏覽器獲取的當前獲取請求正確地解析了本地主機的地址,並按需要加載了index.html。是什麼讓我困惑的是,GET請求只顯示:爲什麼GET請求不會繼承URL並使用/絕對根目錄

127.0.0.1 - - [27/Dec/2016 16:56:23] "GET/HTTP/1.1" 200 

它根據RFC2616-sec5:

the absolute path cannot be empty; if none is present in the original URI, it MUST be given as "/" (the server root). 

在某些時候foo.bar這意味着在被還原成/就算我請輸入http://foo.barhttp://www.foo.bar

如何將完整的URL傳遞給GET請求?我也想知道爲什麼它假定鏈接不是絕對路徑。

回答

1

該方法只給出URL的路徑和查詢字符串。如果您希望指定主機,那麼您必須從Host標題中得到它(如果可用)。

+0

謝謝。有什麼地方我可以進一步閱讀這種行爲? –

+0

https://tools.ietf.org/html/rfc7230 –

相關問題