Rumah > pembangunan bahagian belakang > Golang > Mengapa Apl GoLang Heroku Saya Mengembalikan 'Ralat Aplikasi' Walaupun Binaan Berjaya?

Mengapa Apl GoLang Heroku Saya Mengembalikan 'Ralat Aplikasi' Walaupun Binaan Berjaya?

Susan Sarandon
Lepaskan: 2024-12-05 10:00:20
asal
933 orang telah melayarinya

Why Does My GoLang Heroku App Return an

Menggunakan Apl GoLang pada Heroku: Menyelesaikan masalah "Ralat Aplikasi"

Soalan:

Menggunakan aplikasi GoLang pada Heroku menggunakan sokongan GoDep, binaan berjaya tetapi mengakses titik akhir mengembalikan "Application Ralat." Apl ini berjalan pada port 9000 pada localhost, tetapi grace.Serve nampaknya mendengar pada port yang berbeza.

Heroku Log Output:

2019-07-08T05:03:48.131507+00:00 heroku[web.1]: Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch
Salin selepas log masuk

Permohonan Kod:

err := grace.Serve(":9000", context.ClearHandler(http.DefaultServeMux))
Salin selepas log masuk

Jawapan:

Isunya ialah aplikasi mengikat pelayan webnya secara jelas kepada port 9000, yang bercanggah dengan port yang diperuntukkan oleh Heroku. Heroku memperuntukkan port dinamik melalui pembolehubah persekitaran PORT.

Untuk menyelesaikan masalah ini, aplikasi harus memperuntukkan port secara dinamik berdasarkan pembolehubah persekitaran PORT dan bukannya pengekodan keras port 9000.

Disemak Kod Permohonan:

port := os.Getenv("PORT")
if port == "" {
    port = "9000" // Default port if not specified
}
err := grace.Serve(":" + port, context.ClearHandler(http.DefaultServeMux))
Salin selepas log masuk

Atas ialah kandungan terperinci Mengapa Apl GoLang Heroku Saya Mengembalikan 'Ralat Aplikasi' Walaupun Binaan Berjaya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan