代码拉取完成,页面将自动刷新
package http
import (
"compress/gzip"
"fmt"
)
// p400 400 page
func (m *MockNginx) p400() {
m.setHeaders()
m.header.Set("Content-Type", "text/html")
content := "<html>\r\n<head><title>%v</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>%v</h1></center>\r\n<hr><center>%v</center>\r\n</body>\r\n</html>\r\n"
content = fmt.Sprintf(content, "400 Bad Request", "400 Bad Request", m.Server)
m.header.Set("Content-Length", fmt.Sprintf("%d", len(content)))
// 响应头
_, _ = m.Conn.Write([]byte("HTTP/1.1 400 Bad Request\r\n"))
for key, value := range m.header {
_, _ = m.Conn.Write([]byte(fmt.Sprintf("%v: %v\r\n", key, value[0])))
}
// 响应数据
_, _ = m.Conn.Write([]byte("\r\n"))
_, _ = m.Conn.Write([]byte(content))
}
// pi index page
func (m *MockNginx) pi() {
m.setHeaders()
m.header.Set("Content-Type", "text/html")
m.header.Set("Content-Encoding", "gzip")
m.header.Set("Last-Modified", fmt.Sprintf("%v GMT", startTimestamp.Format("Mon, 02 Jan 2006 15:04:05")))
content := "<!DOCTYPE html>\n" +
"<html>\n" +
"<head>\n" +
"<title>Welcome to nginx!</title>\n" +
"<style>\n body {\n width: 35em;\n margin: 0 auto;\n font-family: Tahoma, Verdana, Arial, sans-serif;\n }\n</style>\n" +
"</head>\n" +
"<body>\n" +
"<h1>Welcome to nginx!</h1>\n" +
"<p>If you see this page, the nginx web server is successfully installed and\nworking. Further configuration is required.</p>\n\n" +
"<p>For online documentation and support please refer to\n<a href=\"http://nginx.org/\">nginx.org</a>.<br/>\nCommercial support is available at\n<a href=\"http://nginx.com/\">nginx.com</a>.</p>\n\n" +
"<p><em>Thank you for using nginx.</em></p>\n" +
"</body>\n" +
"</html>\n"
m.header.Set("Content-Length", fmt.Sprintf("%d", len(content)))
m.header.Set("ETag", fmt.Sprintf("W/\"%x-%x\"", startTimestamp.Unix(), len(content)))
// 响应头
_, _ = m.Conn.Write([]byte("HTTP/1.1 200 OK\r\n"))
for key, value := range m.header {
_, _ = m.Conn.Write([]byte(fmt.Sprintf("%v: %v\r\n", key, value[0])))
}
// 响应数据
_, _ = m.Conn.Write([]byte("\r\n"))
gw := gzip.NewWriter(m.Conn)
defer gw.Close()
_, _ = gw.Write([]byte(content))
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。