First, here is an example of http-get:

  (use-modules ((web uri)    #:select (string->uri))
               ((web client) #:select (http-get)))
  (call-with-values (lambda ()
                      (http-get
                       (string->uri "http://www.gnu.org/software/guile/")))
    (lambda (res-headers res-body)
      (display res-body)
      (newline)))

It works well. But after changing url string from "http://www.gnu.org/software/guile/" to "http://www.gnu.org/", it did not work. Last two lines of Backtrace is:
  web/http.scm:184:11: In procedure read-header:
  web/http.scm:184:11: Throw to key `bad-header' with args `(uri "home.html")'.

I think http://www.gnu.org/ need to know browser's encoding language. http-get accept extra-headers but I don't know how to fill the contents of headers in web and scheme. In scheme, I think acon magic(?) is needed. Please show me an example to fill headers. I want to fill browser's encoding language, browser's type and some cookies. Oh, cookie would be need if  http://www.google.com/ , I think, and would be got from res-headers.