我写了一个简单的 Go
网络服务器,它只返回网络客户端的路径:
package main
import (
"net/http"
"log"
)
type httpServer struct {
}
func (server httpServer) ServeHTTP(w http.ResponseWriter, r *http.Request) {
w.Write([]byte(r.URL.Path))
}
func main() {
var server httpServer
http.Handle("/", server)
log.Fatal(http.ListenAndServe("localhost:9000", nil))
}
我怀疑它与代理有关。但是为什么 IE
可以,而 Chrome
不行呢?我认为他们应该使用相同的代理。
最佳答案
看来您正在从不同的主机运行 chrome,是吗? (基于它显示的 IP 地址不是本地主机这一事实)
log.Fatal(http.ListenAndServe("localhost:9000", nil))
这意味着:专门监听 127.0.0.1:9000(假设您的主机文件仍然默认将本地主机分配给 127.0.0.1)
没有办法从另一个盒子里击中它。
更改为:
log.Fatal(http.ListenAndServe(":9000", nil))
这将导致 go 服务器监听它运行的机器的所有地址。
或者您是说在 chrome 中键入“localhost:9000”,它会从您尝试使用 IE 的同一台机器重定向到 16.155.255.10/apache-default?
关于google-chrome - 为什么IE和Chrome显示的内容不一样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34326108/