This is a creation in Article, where the information may have evolved or changed.
1.test.go files, using the CGI package,. Go is not an executable file, use go run to invoke
Package Mainimport ("Log" "net/http" "net/http/cgi") Func Main () {http. Handlefunc ("/", func (w http. Responsewriter, R *http. Request) {handler:=New(CGI. Handler) Handler. Path="D:/go/bin/go"Script:="d:/workspace/gopro/"+R.url. Path log. Println (handler. Path) handler. Dir="d:/workspace/gopro/"args:= []string{"Run", script} handler. Args=Append (handler. args, args ...) Handler. ENV= Append (handler. Env"Gopath=d:/go/gopath") handler. ENV= Append (handler. Env"Goroot=d:/go") log. Println (handler. Args) handler. Servehttp (W, R)}) log. Fatal (http. Listenandserve (": 8080", nil))}
2.testcgi.go Code
Package Mainimport ( "fmt") func init () { fmt. Print ("content-type:text/plain;charset=utf-8\n\n")}func main () { fmt. Println ("This isgocgi test")}
3. Browser input Http://127.0.0.1:8080/testcgi.go view running results
Refer to the original link address: http://www.cnblogs.com/yjf512/archive/2012/12/25/2831891.html
I use my own environment for Test runs and