0

サイトのコンテンツを取得できません。500 エラーが返されます。しかし、www.google.com.hk や他のサイトに切り替えれば問題ありません。なんで?

以下はコードです。

package main

import (
    "fmt"
    "io/ioutil"
    "log"
    "net/http"
)

func main() {
    resp, err := http.Get("http://www.eqsn.gov.cn") //the browsers,IE\firefox access it is ok.
    // resp, err := http.Get("http://www.google.com.hk")  //It's ok.

    if err != nil {
        log.Fatalf("http.Get => %v", err.Error())
    }
    body, _ := ioutil.ReadAll(resp.Body)
    fmt.Printf("\n%v\n\n", string(body))
}
4

1 に答える 1

4

の実行でhttp.Get()エラー 500 (内部サーバー エラー) が返された場合、このエラーはサーバーに起因する可能性が高いです。実際に、手動で試してみましょう。このオプション-D-はヘッダーをダンプします。

$ curl -D- http://www.eqsn.gov.cnHTTP/1.0 500 Internal Server Error
Date: Mon, 17 Jun 2013 02:01:11 GMT
Content-Type: text/html; charset=iso-8859-1
Content-Length: 538
X-Powered-By: 
X-AspNet-Version: 
MicrosoftOfficeWebServer: 
Server: 
X-Cache: MISS from CNC-JSWX-254-131.fastcdn.com
X-Cache: MISS from CT-ZJNB-152-196.fastcdn.com
Connection: close

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>500 Internal Server Error</title>
</head><body>
<h1>Internal Server Error</h1>
<p>The server encountered an internal error or
misconfiguration and was unable to complete
your request.</p>
<p>Please contact the server administrator,
 [no address given] and inform them of the time the error occurred,
and anything you might have done that may have
caused the error.</p>
<p>More information about this error may be available
in the server error log.</p>
</body></html>

ご覧のとおり、サーバーからエラー 500 が返されます。Go は完全に正常に動作します。サーバーが送信するエラー500が表示されます。さらに質問がある場合は、お気軽にお問い合わせください。

于 2013-06-16T18:20:46.503 に答える