dscrn1974 2015-05-28 08:40
浏览 59
已采纳

在Heroku服务器上部署golang martini HTTPS

I am trying to deploy an HTTPS web side on Heroku using Golang-martini.

Here is the list I already done:

  • I already enable SSL endpoint in Heroku. (it is paid plugin services)
  • I already purchase my CA certificate key and it could be deploy Heroku. So, heroku certs shows: (note: the company name/endpoint address change)


    Endpoint || Common Name(s) || Expires || Trusted


    xxx.herokussl.com || server.sample.com || 2016-05-25 23:59 UTC || True

And here is my code sample in Golang.

m := martini.Classic()
martini.Env = martini.Prod
m.Use(secure.Secure(secure.Options{
    SSLRedirect: false,
}))


//Because I want to keep HTTP and HTTPs enable.
go func() {
    if err := http.ListenAndServe(":"+os.Getenv("PORT"), m); err != nil {
        log.Println(err)
    }
}()

// HTTPS: 
if err := http.ListenAndServeTLS(":443", "server.crt", "server.key", m); err != nil {
    log.Println(err)
}

Here are the my Questions:

  • If I set the ListenAndServeTLS port in 8443 (or something else) it will show error when I trying to test with curl -vI https://server.sample.com. It will show error as:

    "curl: (60) SSL certificate problem: Invalid certificate chain"

  • If I set the ListenAndServeTLS port to 443, it will show:

    "listen tcp :443: bind: permission denied"

Please advise how I deploy HTTPs with Go-martini on Heroku, thanks..

  • 写回答

1条回答 默认 最新

  • dsa99349 2015-05-28 08:54
    关注

    Your app won't serve HTTPS if you are deploying to Heroku. The SSL connection will be terminated at the load balancers of Heroku and plain HTTP traffic will be forwarded to your application.

    So all you have to do is to listen on HTTP on the Port from the environment.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 用hfss做微带贴片阵列天线的时候分析设置有问题
  • ¥50 我撰写的python爬虫爬不了 要爬的网址有反爬机制
  • ¥15 Centos / PETSc / PETGEM
  • ¥15 centos7.9 IPv6端口telnet和端口监控问题
  • ¥120 计算机网络的新校区组网设计
  • ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 海浪数据 南海地区海况数据,波浪数据
  • ¥20 软件测试决策法疑问求解答
  • ¥15 win11 23H2删除推荐的项目,支持注册表等