9/23/2006

HTTP 認證程式(不使用 ssl )

本來以為上面那一隻 script 可以偵測公司各個 server 的狀態 :p。但是果然事情沒那麼簡單,有一台我架的 test server 裡面的網頁是開發階段的,需要避免閒雜人等進來了解研發機密,所以我簡單的用 lighttpd 的 mod_auth module 去作 access control。所以我必須寫在裡面加入一般 http auth,這一段是可以認證的 HTTP 程式。
require 'net/http'

url_address = 'http://www.example.com'
url = URI.parse(url_address)
req = Net::HTTP::Get.new(url.path)
req.basic_auth 'user', 'password'
res = Net::HTTP.start(url.host, url.port) { |http| http.request(req) }
puts res.body

user / password 就是放在 req.basic_auth 後面即可。

沒有留言: