golang和ListenAndServeTLS返回错误

huangapple go评论131阅读模式
英文:

golang and ListenAndServeTLS return error

问题

  1. func main(){
  2. runtime.GOMAXPROCS(runtime.NumCPU())
  3. r := mux.NewRouter()
  4. www := r.Host("secure.domain.com").Subrouter()
  5. www.HandleFunc("/", Handler_www)
  6. api := r.Host("api.domain.com").Subrouter()
  7. api.HandleFunc("/", Handler_api)
  8. go func(){
  9. cert := "/var/ini/ssl/secure.domain.com/intermediate.crt"
  10. prv_key := "/var/ini/ssl/secure.domain.com/private.key"
  11. err := http.ListenAndServeTLS(":9443", cert, prv_key, r)
  12. if err != nil {
  13. log.Fatal("HTTPS server: ", err)
  14. }
  15. }
  16. err := http.ListenAndServe(":9000", r)
  17. if err != nil {
  18. log.Fatal("HTTP server: ", err)
  19. }
  20. }
  1. func main(){
  2. runtime.GOMAXPROCS(runtime.NumCPU())
  3. r := mux.NewRouter()
  4. www := r.Host("secure.domain.com").Subrouter()
  5. www.HandleFunc("/", Handler_www)
  6. api := r.Host("api.domain.com").Subrouter()
  7. api.HandleFunc("/", Handler_api)
  8. go func(){
  9. cert := "/var/ini/ssl/secure.domain.com/intermediate.crt"
  10. prv_key := "/var/ini/ssl/secure.domain.com/private.key"
  11. err := http.ListenAndServeTLS(":9443", cert, prv_key, r)
  12. if err != nil {
  13. log.Fatal("HTTPS 服务器:", err)
  14. }
  15. }
  16. err := http.ListenAndServe(":9000", r)
  17. if err != nil {
  18. log.Fatal("HTTP 服务器:", err)
  19. }
  20. }
英文:
  1. func main(){
  2. runtime.GOMAXPROCS(runtime.NumCPU())
  3. r := mux.NewRouter()
  4. www := r.Host("secure.domain.com").Subrouter()
  5. www.HandleFunc("/", Handler_www)
  6. api := r.Host("api.domain.com").Subrouter()
  7. api.HandleFunc("/", Handler_api)
  8. go func(){
  9. cert := "/var/ini/ssl/secure.domain.com/intermediate.crt"
  10. prv_key := "/var/ini/ssl/secure.domain.com/private.key"
  11. err := http.ListenAndServeTLS(":9443", cert, prv_key, r)
  12. if err != nil {
  13. log.Fatal("HTTPS server: ", err)
  14. }
  15. }
  16. err := http.ListenAndServe(":9000", r)
  17. if err != nil {
  18. log.Fatal("HTTP server: ", err)
  19. }
  20. }

答案1

得分: 2

尝试在闭合的 } 后面添加 ()

这样,你实际上会调用 func()

  1. go func(){
  2. cert := "/var/ini/ssl/secure.domain.com/intermediate.crt"
  3. prv_key := "/var/ini/ssl/secure.domain.com/private.key"
  4. err := http.ListenAndServeTLS(":9443", cert, prv_key, r)
  5. if err != nil {
  6. log.Fatal("HTTPS server: ", err)
  7. }
  8. }()
英文:

Try and add () after the closing }.

That way, you would actually call the func().

  1. go func(){
  2. cert := "/var/ini/ssl/secure.domain.com/intermediate.crt"
  3. prv_key := "/var/ini/ssl/secure.domain.com/private.key"
  4. err := http.ListenAndServeTLS(":9443", cert, prv_key, r)
  5. if err != nil {
  6. log.Fatal("HTTPS server: ", err)
  7. }
  8. }()

huangapple
  • 本文由 发表于 2015年4月13日 17:05:55
  • 转载请务必保留本文链接:https://go.coder-hub.com/29601576.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定