Pusing Ketemu Error 502.5 Pada Saat Publish ASP.NET Core?

Halo Jarhosters, apa kabar semua? Pada tutorial kali ini, saya akan membahas bagaimana sih cara fix error di atas. Biasa error ini akan Anda temukan pada saat publish ASP.NET Core 1.1 ataupun ASP.NET Core 2. Berikut adalah full error messagenya:

Sudah lihat kan error di atas? Error lengkapnya adalah HTTP Error 502.5 – Process Failure.

Kok Bisa Error Begitu?

Kenapa sih bisa error seperti itu? HTTP Error 502.5 terjadi karena ASP.NET Core gagal mengeksekusi/menjalankan dotnet process. Ada 2 alasan yang menyebabkan hal ini terjadi

  1. .NET Core Runtime belum terinstall di server
  2. Web.config Anda belum Anda ganti.

Cara Fix Error di Atas?

Caranya sangat simple dan mudah untuk mengatasi error di atas. Yang perlu Anda pastikan adalah hosting provider Anda sudah support .NET Core terbaru/terinstall dengan sempurna di server. Jika hosting provider Anda tidak support .NET, pasti tidak akan berjalan. Pastikan Anda pilih hosting provider yang selalu support .NET terbaru sehingga dapat berjalan dengan baik aplikasi Anda.

1. Install .NET Core Runtime Terbaru

Coba didownload dahulu .NET Core Runtime dari web Microsoft langsung. Nih coba lihat di bawah:

Sudah lihat gambar di atas? Pastikan Anda install .NET Core Runtime dan .NET Core SDK.

2. Publish a Self-Contained Deployment

Jika Anda tidak mau install .NET Core Runtime, ada alternative lain ni, guys. Anda dapat publish sebagai Self-Containeddeployment mode, dimana akan secara otomatis memasukkan .NET Runtime files di aplikasi Anda.

Anda dapat memilih pilihan di bawah ini saat publish menggunakan Visual Studio:

Jika Anda memilih pakai cara ini, maka Anda juga harus memilih target runtime Anda: win-x86, win-x64, osx-x64, atau linux-x64 karena self-contained tidak dapat dipindahkan.

3. Transform Web.Config File Anda

Nah ini alasan berikutnya kenapa Anda ketemu error di atas. Itu disebabkan web.config Anda belum dirubah. Pastikan Anda ganti dulu web.config Anda.

ASP.NET Core Web Config

Berikut web.config file yang minimal harus ada di web.config file Anda:

Masalah Teknis?

Web.config yang belum Anda ubah akan ada variables seperti %LAUNCHER_PATH% dan %LAUNCHER_ARGS%. Jadi ketika IIS coba untuk menjalankan ASP.NET Core Anda, IIS akan menggunakan %LAUNCHER_PATH% dan %LAUNCHER_ARGS% daripada path yang benar.

Jadi sudah tahu kan jika ketemu error di atas, Anda harus ganti/transform web.config Anda seperti contoh di atas.

Gimana sih cara ganti web.config?

Bingung ya gimana cara gantinya? Ini dapat Anda lihat pada saat Anda publish web aplikasi Anda. Coba cek published output folder pada saat Anda mau publish. Jadi, Anda hanya perlu publsih web aplikasi Anda dan copy hasil dari web.config file ke server. Gampang kan?

Nih, hasil dari aspNetCore elementnya:

%LAUNCHER_PATH% sudah terganti dengan dotnet dan %LAUNCHER_ARGS% sudah terganti dengan path web aplikasi Anda dll.\MyApplication.dll.

Jangan BINGUNG!

Semoga tutorial di atas dapat membantu mengatasi masalah pada saat Anda publish ASP.NET Core. Jadi apa sih syarat untuk jalankan ASP.NET Core di server?

  1. Yang paling penting hosting provider Anda harus support latest ASP.NET Core version.
  2. Silahkan ikuti metode di atas. Jika ada error, cek kembali di server full error messagenya.

OK, sekian dulu ya tutorial kali ini. Nanti sambung lagi tutorial menarik lainnya. Salam hangat dari JaringanHosting Team!