2012-08-27 38 views
1

據我瞭解,一個URL由如下因素字段:可以在URL內使用http://嗎?

  • 協議(HTTP,HTTPS,FTP等)
  • 用戶名
  • 用戶密碼
  • 主機地址( IP地址或DNS FQDN)
  • 端口(可暗示)
  • 路徑到文檔裏面的服務器文檔根
  • 集arg的uments和值
  • 文檔部件(#)

protocol://user:[email protected]:port/path/document?arg1=val1&arg2=val2#part

但我剛剛認識使用的例子 「HTTP://」 的路徑部分內:存在重定向服務(展示廣告併爲您通過它傳遞的流量付款),這些服務僅向其自己添加目標網址(完整形式,帶有「http://」)。從標準的角度來看,它被認爲是好的嗎?它不會破壞什麼嗎?通常情況下,我永遠不會期望在有效的URL內部遇到「//」雙斜槓,冒號或「#」,而是在上面示例中的地方。

回答

1

不,從標準的角度來看它並不好。

Section 3.3 Path Component in RFC-2396,路徑不能包含下列字符 - "/", ";", "=", and "?"

通常情況下,瀏覽器使得HTTP請求,這就是爲什麼它的工作原理在實踐中之前編碼這種畸形的URI。

+0

是的,他們需要進行編碼以保證格式正確。實際上,將嵌入的URL作爲參數值是一個好主意,這樣編碼和解碼就可以透明地處理。 –

相關問題