Bagikan melalui


Pemecahan masalah kesalahan umum untuk Azure App Service dan IIS dengan ASP.NET Core

Topik ini menjelaskan kesalahan yang paling umum dan memberikan saran pemecahan masalah saat menghosting aplikasi ASP.NET Core di Azure Apps Service dan IIS.

Lihat Memecahkan masalah ASP.NET Core di Azure App Service dan informasi IIS tentang kesalahan pengaktifan aplikasi umum dan instruksi tentang cara mendiagnosis kesalahan.

Kumpulkan informasi berikut:

Bandingkan informasi kesalahan dengan kesalahan umum berikut. Jika kecocokan ditemukan, ikuti saran pemecahan masalah.

Daftar kesalahan dalam topik ini tidak lengkap. Jika Anda mengalami kesalahan yang tidak tercantum di sini, buka masalah baru menggunakan tombol Umpan balik Konten di bagian bawah topik ini dengan instruksi terperinci tentang cara mereproduksi kesalahan.

Penting

ASP.NET Rilis pratinjau Core dengan Azure App Service

ASP.NET Rilis pratinjau Core tidak disebarkan ke Azure App Service secara default. Untuk menghosting aplikasi yang menggunakan rilis pratinjau ASP.NET Core, lihat Menyebarkan rilis pratinjau ASP.NET Core ke Azure App Service.

Peningkatan OS menghapus Modul Inti ASP.NET 32-bit

Log Aplikasi: Modul DLL C:\WINDOWS\system32\inetsrv\aspnetcore.dll gagal dimuat. Data adalah kesalahan.

Pemecahan Masalah:

File non-OS di direktori C:\Windows\SysWOW64\inetsrv tidak dipertahankan selama peningkatan OS. Jika Modul ASP.NET Core diinstal sebelum peningkatan OS dan kemudian kumpulan aplikasi apa pun dijalankan dalam mode 32-bit setelah peningkatan OS, masalah ini dihadapi. Setelah peningkatan OS, perbaiki Modul Inti ASP.NET. Lihat Menginstal bundel .NET Core Hosting. Pilih Perbaiki saat alat penginstal dijalankan.

Ekstensi situs hilang, ekstensi situs 32-bit (x86) dan 64-bit (x64) terinstal, atau set bitness proses yang salah

Berlaku untuk aplikasi yang dihosting oleh Azure App Services.

  • Browser: Kesalahan HTTP 500.0 - Kegagalan Beban Handler Dalam Proses ANCM

  • Log Aplikasi: Memanggil hostfxr untuk menemukan handler permintaan inprocess gagal tanpa menemukan dependensi asli. Tidak dapat menemukan handler permintaan inprocess. Output yang diambil dari memanggil hostfxr: Tidak dimungkinkan untuk menemukan versi kerangka kerja yang kompatibel. Kerangka kerja yang ditentukan 'Microsoft.AspNetCore.App', versi '{VERSION}-preview-*' tidak ditemukan. Gagal memulai aplikasi '/LM/W3SVC/1416782824/ROOT', ErrorCode '0x8000ffff'.

  • ASP.NET Core Module stdout Log: Tidak dimungkinkan untuk menemukan versi kerangka kerja yang kompatibel. Kerangka kerja yang ditentukan 'Microsoft.AspNetCore.App', versi '{VERSION}-preview-*' tidak ditemukan.

  • ASP.NET Core Module Debug Log: Memanggil hostfxr untuk menemukan handler permintaan inprocess gagal tanpa menemukan dependensi asli. Ini kemungkinan besar berarti aplikasi salah dikonfigurasi, silakan periksa versi Microsoft.NetCore.App dan Microsoft.AspNetCore.App yang ditargetkan oleh aplikasi dan diinstal pada komputer. HRESULT gagal dikembalikan: 0x8000ffff. Tidak dapat menemukan handler permintaan inprocess. Tidak dimungkinkan untuk menemukan versi kerangka kerja yang kompatibel. Kerangka kerja yang ditentukan 'Microsoft.AspNetCore.App', versi '{VERSION}-preview-*' tidak ditemukan.

Pemecahan Masalah:

  • Jika menjalankan aplikasi pada runtime pratinjau, instal ekstensi situs 32-bit (x86) atau 64-bit (x64) yang cocok dengan bitness aplikasi dan versi runtime aplikasi. Jangan instal ekstensi atau beberapa versi runtime ekstensi.

    • ASP.NET Core {RUNTIME VERSION} (x86) Runtime
    • ASP.NET Core {RUNTIME VERSION} (x64) Runtime

    Mulai ulang aplikasi. Tunggu beberapa detik hingga aplikasi dimulai ulang.

  • Jika menjalankan aplikasi pada runtime pratinjau dan ekstensi situs 32-bit (x86) dan 64-bit (x64) diinstal, hapus instalan ekstensi situs yang tidak cocok dengan bitness aplikasi. Setelah menghapus ekstensi situs, mulai ulang aplikasi. Tunggu beberapa detik hingga aplikasi dimulai ulang.

  • Jika menjalankan aplikasi pada runtime pratinjau dan bitness ekstensi situs cocok dengan aplikasi, konfirmasikan bahwa versi runtime ekstensi situs pratinjau cocok dengan versi runtime aplikasi.

  • Konfirmasikan bahwa Platform aplikasi di Aplikasi Pengaturan cocok dengan bitness aplikasi.

Untuk informasi selengkapnya, lihat Menyebarkan aplikasi ASP.NET Core ke Azure App Service.

Aplikasi x86 disebarkan tetapi kumpulan aplikasi tidak diaktifkan untuk aplikasi 32-bit

  • Browser: Kesalahan HTTP 500.30 - Kegagalan Mulai Dalam Proses ANCM

  • Log Aplikasi: Aplikasi '/LM/W3SVC/5/ROOT' dengan akar fisik '{PATH}' mencapai pengecualian terkelola yang tidak terduga, kode pengecualian = '0xe0434352'. Silakan periksa log stderr untuk informasi lebih lanjut. Aplikasi '/LM/W3SVC/5/ROOT' dengan akar fisik '{PATH}' gagal memuat clr dan aplikasi terkelola. Rangkaian pekerja CLR keluar terlalu cepat

  • ASP.NET Log stdout Modul Inti: File log dibuat tetapi kosong.

  • ASP.NET Log Debug Modul Inti: HRESULT gagal dikembalikan: 0x8007023e

Skenario ini terjebak oleh SDK saat menerbitkan aplikasi mandiri. SDK menghasilkan kesalahan jika RID tidak cocok dengan target platform (misalnya, win10-x64 RID dengan <PlatformTarget>x86</PlatformTarget> dalam file proyek).

Pemecahan Masalah:

Untuk penyebaran yang bergantung pada kerangka kerja x86 (<PlatformTarget>x86</PlatformTarget>), aktifkan kumpulan aplikasi IIS untuk aplikasi 32-bit. Di IIS Manager, buka Pengaturan Tingkat Lanjut kumpulan aplikasi dan atur Aktifkan Aplikasi 32-Bit ke True.

Konflik platform dengan RID

  • Browser: Kesalahan HTTP 502.5 - Kegagalan Proses

  • Log Aplikasi: Aplikasi 'MACHINE/WEBROOT/APPHOST/{ASSEMBLY}' dengan akar fisik 'C:{PATH}' gagal memulai proses dengan commandline '"C:{PATH}{ASSEMBLY}.{ exe|dll}" ', ErrorCode = '0x80004005 : ff.

  • ASP.NET Log stdout Modul Inti: Pengecualian Tidak Tertangani: System.BadImageFormatException: Tidak dapat memuat file atau rakitan '{ASSEMBLY}.dll'. Upaya dilakukan untuk memuat program dengan format yang salah.

Pemecahan Masalah:

  • Konfirmasikan bahwa aplikasi berjalan secara lokal di Kestrel. Kegagalan proses mungkin merupakan akibat dari masalah dalam aplikasi. Untuk informasi selengkapnya, lihat Memecahkan masalah ASP.NET Core di Azure App Service dan IIS.

  • Jika pengecualian ini terjadi untuk penyebaran Azure Apps saat meningkatkan aplikasi dan menyebarkan rakitan yang lebih baru, hapus semua file secara manual dari penyebaran sebelumnya. Rakitan yang tidak kompatibel yang berlama-lama dapat menghasilkan pengecualian saat menyebarkan aplikasi yang ditingkatkan System.BadImageFormatException .

Titik akhir URI salah atau situs web yang dihentikan

  • Browser: ERR_CONNECTION_REFUSED --OR-- Tidak dapat tersambung

  • Log Aplikasi: Tidak ada entri

  • ASP.NET Log stdout Modul Inti: File log tidak dibuat.

  • ASP.NET Log Debug Modul Inti: File log tidak dibuat.

Pemecahan Masalah:

  • Konfirmasikan titik akhir URI yang benar untuk aplikasi sedang digunakan. Periksa pengikatannya.

  • Konfirmasikan bahwa situs web IIS tidak dalam status Dihentikan .

Fitur server CoreWebEngine atau W3SVC dinonaktifkan

Pengecualian OS: Fitur IIS 7.0 CoreWebEngine dan W3SVC harus diinstal untuk menggunakan Modul Inti ASP.NET.

Pemecahan Masalah:

Konfirmasikan bahwa peran dan fitur yang tepat diaktifkan. Lihat Konfigurasi IIS.

Jalur fisik atau aplikasi situs web yang salah hilang

  • Browser: 403 Terlarang - Akses ditolak --OR-- 403.14 Terlarang - Server web dikonfigurasi untuk tidak mencantumkan isi direktori ini.

  • Log Aplikasi: Tidak ada entri

  • ASP.NET Log stdout Modul Inti: File log tidak dibuat.

  • ASP.NET Log Debug Modul Inti: File log tidak dibuat.

Pemecahan Masalah:

Periksa situs web IIS Pengaturan Dasar dan folder aplikasi fisik. Konfirmasikan bahwa aplikasi berada di folder di jalur Fisik situs web IIS.

Peran yang salah, modul inti ASP.NET tidak diinstal, atau izin yang salah

  • Browser: Kesalahan Server Internal 500.19 - Halaman yang diminta tidak dapat diakses karena data konfigurasi terkait untuk halaman tidak valid. --OR-- Halaman ini tidak dapat ditampilkan

  • Log Aplikasi: Tidak ada entri

  • ASP.NET Log stdout Modul Inti: File log tidak dibuat.

  • ASP.NET Log Debug Modul Inti: File log tidak dibuat.

Pemecahan Masalah:

  • Konfirmasikan bahwa peran yang tepat diaktifkan. Lihat Konfigurasi IIS.

  • Buka Program & Fitur atau Aplikasi & fitur dan konfirmasikan bahwa Windows Server Hosting diinstal. Jika Windows Server Hosting tidak ada dalam daftar program yang diinstal, unduh dan instal .NET Core Hosting Bundle.

    Alat penginstal .NET Core Hosting Bundle saat ini (unduh langsung)

    Untuk informasi selengkapnya, lihat Menginstal Bundel Hosting .NET Core.

  • Pastikan bahwa ModelIdentity> Proses Kumpulan>Aplikasi diatur ke ApplicationPoolIdentity atau identitas kustom memiliki izin yang benar untuk mengakses folder penyebaran aplikasi.

  • Jika Anda menghapus ASP.NET Core Hosting Bundle dan menginstal versi bundel hosting yang lebih lama, file applicationHost.config tidak menyertakan bagian untuk Modul ASP.NET Core. Buka applicationHost.config di %windir%/System32/inetsrv/config dan temukan <configuration><configSections><sectionGroup name="system.webServer"> grup bagian. Jika bagian untuk Modul ASP.NET Core hilang dari grup bagian, tambahkan elemen bagian:

    <section name="aspNetCore" overrideModeDefault="Allow" />
    

    Atau, instal versi terbaru ASP.NET Core Hosting Bundle. Versi terbaru kompatibel mundur dengan aplikasi ASP.NET Core yang didukung.

ProcessPath yang salah, variabel PATH hilang, Bundel Hosting tidak diinstal, sistem/IIS tidak dimulai ulang, VC++ Redistributable tidak diinstal, atau pelanggaran akses dotnet.exe

  • Browser: Kesalahan HTTP 500.0 - Kegagalan Beban Handler Dalam Proses ANCM

  • Log Aplikasi: Aplikasi 'MACHINE/WEBROOT/APPHOST/{ASSEMBLY}' dengan akar fisik 'C:{PATH}' gagal memulai proses dengan commandline '"{...}" ', ErrorCode = '0x80070002 : 0. Aplikasi '{PATH}' tidak dapat dimulai. Executable tidak ditemukan di '{PATH}'. Gagal memulai aplikasi '/LM/W3SVC/2/ROOT', ErrorCode '0x8007023e'.

  • ASP.NET Log stdout Modul Inti: File log tidak dibuat.

  • ASP.NET Log Debug Modul Inti: Log Peristiwa: 'Aplikasi '{PATH}' tidak dapat dimulai. Executable tidak ditemukan di '{PATH}'. HRESULT gagal dikembalikan: 0x8007023e

Pemecahan Masalah:

  • Konfirmasikan bahwa aplikasi berjalan secara lokal di Kestrel. Kegagalan proses mungkin merupakan akibat dari masalah dalam aplikasi. Untuk informasi selengkapnya, lihat Memecahkan masalah ASP.NET Core di Azure App Service dan IIS.

  • Periksa atribut processPath pada elemen di web.config untuk mengonfirmasi bahwa itu dotnet untuk penyebaran yang bergantung pada <aspNetCore> kerangka kerja (FDD) atau .\{ASSEMBLY}.exe untuk penyebaran mandiri (SCD).

  • Untuk FDD, dotnet.exe mungkin tidak dapat diakses melalui pengaturan PATH. Konfirmasikan bahwa C:\Program Files\dotnet\ ada di pengaturan JALUR Sistem.

  • Untuk FDD, dotnet.exe mungkin tidak dapat diakses untuk identitas pengguna kumpulan aplikasi. Konfirmasikan bahwa identitas pengguna kumpulan aplikasi memiliki akses ke direktori C:\Program Files\dotnet . Konfirmasikan bahwa tidak ada aturan tolak yang dikonfigurasi untuk identitas pengguna kumpulan aplikasi pada direktori C:\Program Files\dotnet dan aplikasi.

  • FDD mungkin telah disebarkan dan .NET Core diinstal tanpa memulai ulang IIS. Mulai ulang server atau mulai ulang IIS dengan menjalankan net stop adalah /y diikuti oleh net start w3svc dari prompt perintah.

  • FDD mungkin telah disebarkan tanpa menginstal runtime .NET Core pada sistem hosting. Jika runtime .NET Core belum diinstal, jalankan alat penginstal .NET Core Hosting Bundle pada sistem.

    Alat penginstal .NET Core Hosting Bundle saat ini (unduh langsung)

    Untuk informasi selengkapnya, lihat Menginstal Bundel Hosting .NET Core.

    Jika runtime tertentu diperlukan, unduh runtime dari halaman .NET Downloads dan instal pada sistem. Selesaikan penginstalan dengan memulai ulang sistem atau memulai ulang IIS dengan menjalankan net stop adalah /y diikuti oleh net start w3svc dari prompt perintah.

Argumen <elemen aspNetCore> yang salah

  • Browser: Kesalahan HTTP 500.0 - Kegagalan Beban Handler Dalam Proses ANCM

  • Log Aplikasi: Memanggil hostfxr untuk menemukan handler permintaan inprocess gagal tanpa menemukan dependensi asli. Ini kemungkinan besar berarti aplikasi salah dikonfigurasi, silakan periksa versi Microsoft.NetCore.App dan Microsoft.AspNetCore.App yang ditargetkan oleh aplikasi dan diinstal pada komputer. Tidak dapat menemukan handler permintaan inprocess. Menangkap output dari memanggil hostfxr: Apakah Anda bermaksud menjalankan perintah dotnet SDK? Harap instal dotnet SDK dari: https://go.microsoft.com/fwlink/?LinkID=798306& clcid=0x409 Gagal memulai aplikasi '/LM/W3SVC/3/ROOT', ErrorCode '0x8000ffff'.

  • ASP.NET Log stdout Modul Inti: Apakah Anda bermaksud menjalankan perintah dotnet SDK? Harap instal dotnet SDK dari: https://go.microsoft.com/fwlink/?LinkID=798306& clcid=0x409

  • ASP.NET Core Module Debug Log: Memanggil hostfxr untuk menemukan handler permintaan inprocess gagal tanpa menemukan dependensi asli. Ini kemungkinan besar berarti aplikasi salah dikonfigurasi, silakan periksa versi Microsoft.NetCore.App dan Microsoft.AspNetCore.App yang ditargetkan oleh aplikasi dan diinstal pada komputer. HRESULT gagal dikembalikan: 0x8000ffff Tidak dapat menemukan handler permintaan inprocess. Menangkap output dari memanggil hostfxr: Apakah Anda bermaksud menjalankan perintah dotnet SDK? Harap instal dotnet SDK dari: https://go.microsoft.com/fwlink/?LinkID=798306& clcid=0x409 Gagal HRESULT dikembalikan: 0x8000ffff

Pemecahan Masalah:

  • Konfirmasikan bahwa aplikasi berjalan secara lokal di Kestrel. Kegagalan proses mungkin merupakan akibat dari masalah dalam aplikasi. Untuk informasi selengkapnya, lihat Memecahkan masalah ASP.NET Core di Azure App Service dan IIS.

  • Periksa atribut argumen pada <aspNetCore> elemen di web.config untuk mengonfirmasi bahwa itu adalah (a) .\{ASSEMBLY}.dll untuk penyebaran tergantung kerangka kerja (FDD); atau (b) tidak ada, string kosong (arguments=""), atau daftar argumen aplikasi (arguments="{ARGUMENT_1}, {ARGUMENT_2}, ... {ARGUMENT_X}") untuk penyebaran mandiri (SCD).

Kerangka kerja bersama .NET Core hilang

  • Browser: Kesalahan HTTP 500.0 - Kegagalan Beban Handler Dalam Proses ANCM

  • Log Aplikasi: Memanggil hostfxr untuk menemukan handler permintaan inprocess gagal tanpa menemukan dependensi asli. Ini kemungkinan besar berarti aplikasi salah dikonfigurasi, silakan periksa versi Microsoft.NetCore.App dan Microsoft.AspNetCore.App yang ditargetkan oleh aplikasi dan diinstal pada komputer. Tidak dapat menemukan handler permintaan inprocess. Output yang diambil dari memanggil hostfxr: Tidak dimungkinkan untuk menemukan versi kerangka kerja yang kompatibel. Kerangka kerja yang ditentukan 'Microsoft.AspNetCore.App', versi '{VERSION}' tidak ditemukan.

Gagal memulai aplikasi '/LM/W3SVC/5/ROOT', ErrorCode '0x8000ffff'.

  • ASP.NET Core Module stdout Log: Tidak dimungkinkan untuk menemukan versi kerangka kerja yang kompatibel. Kerangka kerja yang ditentukan 'Microsoft.AspNetCore.App', versi '{VERSION}' tidak ditemukan.

  • ASP.NET Log Debug Modul Inti: HRESULT gagal dikembalikan: 0x8000ffff

Pemecahan Masalah:

Untuk penyebaran yang bergantung pada kerangka kerja (FDD), konfirmasikan bahwa runtime yang benar diinstal pada sistem.

Kumpulan Aplikasi Yang Dihentikan

  • Browser: 503 Layanan Tidak Tersedia

  • Log Aplikasi: Tidak ada entri

  • ASP.NET Log stdout Modul Inti: File log tidak dibuat.

  • ASP.NET Log Debug Modul Inti: File log tidak dibuat.

Pemecahan Masalah:

Konfirmasikan bahwa Kumpulan Aplikasi tidak dalam status Dihentikan .

Sub-aplikasi menyertakan <bagian handler>

  • Browser: Kesalahan HTTP 500.19 - Kesalahan Server Internal

  • Log Aplikasi: Tidak ada entri

  • ASP.NET Core Module stdout Log: File log aplikasi root dibuat dan menunjukkan operasi normal. File log sub-aplikasi tidak dibuat.

  • ASP.NET Log Debug Modul Inti: File log aplikasi root dibuat dan menunjukkan operasi normal. File log sub-aplikasi tidak dibuat.

Pemecahan Masalah:

Konfirmasikan bahwa file web.config sub-aplikasi tidak menyertakan <handlers> bagian atau bahwa sub-aplikasi tidak mewarisi handler aplikasi induk.

Bagian aplikasi <system.webServer> induk dari web.config ditempatkan di dalam <location> elemen. Properti InheritInChildApplications diatur ke false untuk menunjukkan bahwa pengaturan yang ditentukan dalam <elemen lokasi> tidak diwariskan oleh aplikasi yang berada di subdirektori aplikasi induk. Untuk informasi lebih lanjut, lihat ASP.NET Core Module (ANCM) untuk IIS.

jalur log stdout salah

  • Browser: Aplikasi merespons secara normal.

  • Log Aplikasi: Tidak dapat memulai pengalihan stdout di C:\Program Files\IIS\Asp.Net Core Module\V2\aspnetcorev2.dll. Pesan pengecualian: HRESULT 0x80070005 dikembalikan di {PATH}\aspnetcoremodulev2\commonlib\fileoutputmanager.cpp:84. Tidak dapat menghentikan pengalihan stdout di C:\Program Files\IIS\Asp.Net Core Module\V2\aspnetcorev2.dll. Pesan pengecualian: 0x80070002 HRESULT dikembalikan di {PATH}. Tidak dapat memulai pengalihan stdout di {PATH}\aspnetcorev2_inprocess.dll.

  • ASP.NET Log stdout Modul Inti: File log tidak dibuat.

  • ASP.NET Log debug Modul Inti: Tidak dapat memulai pengalihan stdout di C:\Program Files\IIS\Asp.Net Core Module\V2\aspnetcorev2.dll. Pesan pengecualian: HRESULT 0x80070005 dikembalikan di {PATH}\aspnetcoremodulev2\commonlib\fileoutputmanager.cpp:84. Tidak dapat menghentikan pengalihan stdout di C:\Program Files\IIS\Asp.Net Core Module\V2\aspnetcorev2.dll. Pesan pengecualian: 0x80070002 HRESULT dikembalikan di {PATH}. Tidak dapat memulai pengalihan stdout di {PATH}\aspnetcorev2_inprocess.dll.

Pemecahan Masalah:

  • Jalur stdoutLogFile yang ditentukan dalam <aspNetCore> elemen web.config tidak ada. Untuk informasi selengkapnya, lihat ASP.NET Modul Inti: Pembuatan dan pengalihan log.

  • Pengguna kumpulan aplikasi tidak memiliki akses tulis ke jalur log stdout.

Masalah umum konfigurasi aplikasi

  • Browser: Kesalahan HTTP 500.0 - Kegagalan Pemuatan Handler Dalam Proses ANCM --OR-- Kesalahan HTTP 500.30 - Kegagalan Mulai Dalam Proses ANCM

  • Log Aplikasi: Variabel

  • ASP.NET Core Module stdout Log: File log dibuat tetapi kosong atau dibuat dengan entri normal hingga titik aplikasi gagal.

  • ASP.NET Log Debug Modul Inti: Variabel

Pemecahan Masalah:

Proses gagal dimulai, kemungkinan besar karena konfigurasi aplikasi atau masalah pemrograman.

Untuk mengetahui informasi selengkapnya, lihat topik berikut:

Topik ini menjelaskan kesalahan umum dan memberikan saran pemecahan masalah untuk kesalahan tertentu saat menghosting aplikasi ASP.NET Core di Azure Apps Service dan IIS.

Untuk panduan pemecahan masalah umum, lihat Memecahkan masalah ASP.NET Core di Azure App Service dan IIS.

Kumpulkan informasi berikut:

Bandingkan informasi kesalahan dengan kesalahan umum berikut. Jika kecocokan ditemukan, ikuti saran pemecahan masalah.

Daftar kesalahan dalam topik ini tidak lengkap. Jika Anda mengalami kesalahan yang tidak tercantum di sini, buka masalah baru menggunakan tombol Umpan balik Konten di bagian bawah topik ini dengan instruksi terperinci tentang cara mereproduksi kesalahan.

Penting

ASP.NET Rilis pratinjau Core dengan Azure App Service

ASP.NET Rilis pratinjau Core tidak disebarkan ke Azure App Service secara default. Untuk menghosting aplikasi yang menggunakan rilis pratinjau ASP.NET Core, lihat Menyebarkan rilis pratinjau ASP.NET Core ke Azure App Service.

Peningkatan OS menghapus Modul Inti ASP.NET 32-bit

Log Aplikasi: Modul DLL C:\WINDOWS\system32\inetsrv\aspnetcore.dll gagal dimuat. Data adalah kesalahan.

Pemecahan Masalah:

File non-OS di direktori C:\Windows\SysWOW64\inetsrv tidak dipertahankan selama peningkatan OS. Jika Modul ASP.NET Core diinstal sebelum peningkatan OS dan kemudian kumpulan aplikasi apa pun dijalankan dalam mode 32-bit setelah peningkatan OS, masalah ini dihadapi. Setelah peningkatan OS, perbaiki Modul Inti ASP.NET. Lihat Menginstal bundel .NET Core Hosting. Pilih Perbaiki saat alat penginstal dijalankan.

Ekstensi situs hilang, ekstensi situs 32-bit (x86) dan 64-bit (x64) terinstal, atau set bitness proses yang salah

Berlaku untuk aplikasi yang dihosting oleh Azure App Services.

  • Browser: Kesalahan HTTP 500.0 - Kegagalan Beban Handler Dalam Proses ANCM

  • Log Aplikasi: Memanggil hostfxr untuk menemukan handler permintaan inprocess gagal tanpa menemukan dependensi asli. Tidak dapat menemukan handler permintaan inprocess. Output yang diambil dari memanggil hostfxr: Tidak dimungkinkan untuk menemukan versi kerangka kerja yang kompatibel. Kerangka kerja yang ditentukan 'Microsoft.AspNetCore.App', versi '{VERSION}-preview-*' tidak ditemukan. Gagal memulai aplikasi '/LM/W3SVC/1416782824/ROOT', ErrorCode '0x8000ffff'.

  • ASP.NET Core Module stdout Log: Tidak dimungkinkan untuk menemukan versi kerangka kerja yang kompatibel. Kerangka kerja yang ditentukan 'Microsoft.AspNetCore.App', versi '{VERSION}-preview-*' tidak ditemukan.

Pemecahan Masalah:

  • Jika menjalankan aplikasi pada runtime pratinjau, instal ekstensi situs 32-bit (x86) atau 64-bit (x64) yang cocok dengan bitness aplikasi dan versi runtime aplikasi. Jangan instal ekstensi atau beberapa versi runtime ekstensi.

    • ASP.NET Core {RUNTIME VERSION} (x86) Runtime
    • ASP.NET Core {RUNTIME VERSION} (x64) Runtime

    Mulai ulang aplikasi. Tunggu beberapa detik hingga aplikasi dimulai ulang.

  • Jika menjalankan aplikasi pada runtime pratinjau dan ekstensi situs 32-bit (x86) dan 64-bit (x64) diinstal, hapus instalan ekstensi situs yang tidak cocok dengan bitness aplikasi. Setelah menghapus ekstensi situs, mulai ulang aplikasi. Tunggu beberapa detik hingga aplikasi dimulai ulang.

  • Jika menjalankan aplikasi pada runtime pratinjau dan bitness ekstensi situs cocok dengan aplikasi, konfirmasikan bahwa versi runtime ekstensi situs pratinjau cocok dengan versi runtime aplikasi.

  • Konfirmasikan bahwa Platform aplikasi di Aplikasi Pengaturan cocok dengan bitness aplikasi.

Untuk informasi selengkapnya, lihat Menyebarkan aplikasi ASP.NET Core ke Azure App Service.

Aplikasi x86 disebarkan tetapi kumpulan aplikasi tidak diaktifkan untuk aplikasi 32-bit

  • Browser: Kesalahan HTTP 500.30 - Kegagalan Mulai Dalam Proses ANCM

  • Log Aplikasi: Aplikasi '/LM/W3SVC/5/ROOT' dengan akar fisik '{PATH}' mencapai pengecualian terkelola yang tidak terduga, kode pengecualian = '0xe0434352'. Silakan periksa log stderr untuk informasi lebih lanjut. Aplikasi '/LM/W3SVC/5/ROOT' dengan akar fisik '{PATH}' gagal memuat clr dan aplikasi terkelola. Rangkaian pekerja CLR keluar terlalu cepat

  • ASP.NET Log stdout Modul Inti: File log dibuat tetapi kosong.

Skenario ini terjebak oleh SDK saat menerbitkan aplikasi mandiri. SDK menghasilkan kesalahan jika RID tidak cocok dengan target platform (misalnya, win10-x64 RID dengan <PlatformTarget>x86</PlatformTarget> dalam file proyek).

Pemecahan Masalah:

Untuk penyebaran yang bergantung pada kerangka kerja x86 (<PlatformTarget>x86</PlatformTarget>), aktifkan kumpulan aplikasi IIS untuk aplikasi 32-bit. Di IIS Manager, buka Pengaturan Tingkat Lanjut kumpulan aplikasi dan atur Aktifkan Aplikasi 32-Bit ke True.

Konflik platform dengan RID

  • Browser: Kesalahan HTTP 502.5 - Kegagalan Proses

  • Log Aplikasi: Aplikasi 'MACHINE/WEBROOT/APPHOST/{ASSEMBLY}' dengan akar fisik 'C:{PATH}' gagal memulai proses dengan commandline '"C:{PATH}{ASSEMBLY}.{ exe|dll}" ', ErrorCode = '0x80004005 : ff.

  • ASP.NET Log stdout Modul Inti: Pengecualian Tidak Tertangani: System.BadImageFormatException: Tidak dapat memuat file atau rakitan '{ASSEMBLY}.dll'. Upaya dilakukan untuk memuat program dengan format yang salah.

Pemecahan Masalah:

  • Konfirmasikan bahwa aplikasi berjalan secara lokal di Kestrel. Kegagalan proses mungkin merupakan akibat dari masalah dalam aplikasi. Untuk informasi selengkapnya, lihat Memecahkan masalah ASP.NET Core di Azure App Service dan IIS.

  • Jika pengecualian ini terjadi untuk penyebaran Azure Apps saat meningkatkan aplikasi dan menyebarkan rakitan yang lebih baru, hapus semua file secara manual dari penyebaran sebelumnya. Rakitan yang tidak kompatibel yang berlama-lama dapat menghasilkan pengecualian saat menyebarkan aplikasi yang ditingkatkan System.BadImageFormatException .

Titik akhir URI salah atau situs web yang dihentikan

  • Browser: ERR_CONNECTION_REFUSED --OR-- Tidak dapat tersambung

  • Log Aplikasi: Tidak ada entri

  • ASP.NET Log stdout Modul Inti: File log tidak dibuat.

Pemecahan Masalah:

  • Konfirmasikan titik akhir URI yang benar untuk aplikasi sedang digunakan. Periksa pengikatannya.

  • Konfirmasikan bahwa situs web IIS tidak dalam status Dihentikan .

Fitur server CoreWebEngine atau W3SVC dinonaktifkan

Pengecualian OS: Fitur IIS 7.0 CoreWebEngine dan W3SVC harus diinstal untuk menggunakan Modul Inti ASP.NET.

Pemecahan Masalah:

Konfirmasikan bahwa peran dan fitur yang tepat diaktifkan. Lihat Konfigurasi IIS.

Jalur fisik atau aplikasi situs web yang salah hilang

  • Browser: 403 Terlarang - Akses ditolak --OR-- 403.14 Terlarang - Server web dikonfigurasi untuk tidak mencantumkan isi direktori ini.

  • Log Aplikasi: Tidak ada entri

  • ASP.NET Log stdout Modul Inti: File log tidak dibuat.

Pemecahan Masalah:

Periksa situs web IIS Pengaturan Dasar dan folder aplikasi fisik. Konfirmasikan bahwa aplikasi berada di folder di jalur Fisik situs web IIS.

Peran yang salah, modul inti ASP.NET tidak diinstal, atau izin yang salah

  • Browser: Kesalahan Server Internal 500.19 - Halaman yang diminta tidak dapat diakses karena data konfigurasi terkait untuk halaman tidak valid. --OR-- Halaman ini tidak dapat ditampilkan

  • Log Aplikasi: Tidak ada entri

  • ASP.NET Log stdout Modul Inti: File log tidak dibuat.

Pemecahan Masalah:

  • Konfirmasikan bahwa peran yang tepat diaktifkan. Lihat Konfigurasi IIS.

  • Buka Program & Fitur atau Aplikasi & fitur dan konfirmasikan bahwa Windows Server Hosting diinstal. Jika Windows Server Hosting tidak ada dalam daftar program yang diinstal, unduh dan instal .NET Core Hosting Bundle.

    Alat penginstal .NET Core Hosting Bundle saat ini (unduh langsung)

    Untuk informasi selengkapnya, lihat Menginstal Bundel Hosting .NET Core.

  • Pastikan bahwa ModelIdentity> Proses Kumpulan>Aplikasi diatur ke ApplicationPoolIdentity atau identitas kustom memiliki izin yang benar untuk mengakses folder penyebaran aplikasi.

  • Jika Anda menghapus ASP.NET Core Hosting Bundle dan menginstal versi bundel hosting yang lebih lama, file applicationHost.config tidak menyertakan bagian untuk Modul ASP.NET Core. Buka applicationHost.config di %windir%/System32/inetsrv/config dan temukan <configuration><configSections><sectionGroup name="system.webServer"> grup bagian. Jika bagian untuk Modul ASP.NET Core hilang dari grup bagian, tambahkan elemen bagian:

    <section name="aspNetCore" overrideModeDefault="Allow" />
    

    Atau, instal versi terbaru ASP.NET Core Hosting Bundle. Versi terbaru kompatibel mundur dengan aplikasi ASP.NET Core yang didukung.

ProcessPath yang salah, variabel PATH hilang, Bundel Hosting tidak diinstal, sistem/IIS tidak dimulai ulang, VC++ Redistributable tidak diinstal, atau pelanggaran akses dotnet.exe

  • Browser: Kesalahan HTTP 502.5 - Kegagalan Proses

  • Log Aplikasi: Aplikasi 'MACHINE/WEBROOT/APPHOST/{ASSEMBLY}' dengan akar fisik 'C:{PATH}' gagal memulai proses dengan commandline '"{...}" ', ErrorCode = '0x80070002 : 0.

  • ASP.NET Log stdout Modul Inti: File log dibuat tetapi kosong.

Pemecahan Masalah:

  • Konfirmasikan bahwa aplikasi berjalan secara lokal di Kestrel. Kegagalan proses mungkin merupakan akibat dari masalah dalam aplikasi. Untuk informasi selengkapnya, lihat Memecahkan masalah ASP.NET Core di Azure App Service dan IIS.

  • Periksa atribut processPath pada elemen di web.config untuk mengonfirmasi bahwa itu dotnet untuk penyebaran yang bergantung pada <aspNetCore> kerangka kerja (FDD) atau .\{ASSEMBLY}.exe untuk penyebaran mandiri (SCD).

  • Untuk FDD, dotnet.exe mungkin tidak dapat diakses melalui pengaturan PATH. Konfirmasikan bahwa C:\Program Files\dotnet\ ada di pengaturan JALUR Sistem.

  • Untuk FDD, dotnet.exe mungkin tidak dapat diakses untuk identitas pengguna kumpulan aplikasi. Konfirmasikan bahwa identitas pengguna kumpulan aplikasi memiliki akses ke direktori C:\Program Files\dotnet . Konfirmasikan bahwa tidak ada aturan tolak yang dikonfigurasi untuk identitas pengguna kumpulan aplikasi pada direktori C:\Program Files\dotnet dan aplikasi.

  • FDD mungkin telah disebarkan dan .NET Core diinstal tanpa memulai ulang IIS. Mulai ulang server atau mulai ulang IIS dengan menjalankan net stop adalah /y diikuti oleh net start w3svc dari prompt perintah.

  • FDD mungkin telah disebarkan tanpa menginstal runtime .NET Core pada sistem hosting. Jika runtime .NET Core belum diinstal, jalankan alat penginstal .NET Core Hosting Bundle pada sistem.

    Alat penginstal .NET Core Hosting Bundle saat ini (unduh langsung)

    Untuk informasi selengkapnya, lihat Menginstal Bundel Hosting .NET Core.

    Jika runtime tertentu diperlukan, unduh runtime dari halaman .NET Downloads dan instal pada sistem. Selesaikan penginstalan dengan memulai ulang sistem atau memulai ulang IIS dengan menjalankan net stop adalah /y diikuti oleh net start w3svc dari prompt perintah.

Argumen <elemen aspNetCore> yang salah

  • Browser: Kesalahan HTTP 502.5 - Kegagalan Proses

  • Log Aplikasi: Aplikasi 'MACHINE/WEBROOT/APPHOST/{ASSEMBLY}' dengan akar fisik 'C:{PATH}' gagal memulai proses dengan commandline '"dotnet" .{ ASSEMBLY}.dll', ErrorCode = '0x80004005 : 80008081.

  • ASP.NET Log stdout Modul Inti: Aplikasi yang dijalankan tidak ada: 'PATH{ASSEMBLY}.dll'

Pemecahan Masalah:

  • Konfirmasikan bahwa aplikasi berjalan secara lokal di Kestrel. Kegagalan proses mungkin merupakan akibat dari masalah dalam aplikasi. Untuk informasi selengkapnya, lihat Memecahkan masalah ASP.NET Core di Azure App Service dan IIS.

  • Periksa atribut argumen pada <aspNetCore> elemen di web.config untuk mengonfirmasi bahwa itu adalah (a) .\{ASSEMBLY}.dll untuk penyebaran tergantung kerangka kerja (FDD); atau (b) tidak ada, string kosong (arguments=""), atau daftar argumen aplikasi (arguments="{ARGUMENT_1}, {ARGUMENT_2}, ... {ARGUMENT_X}") untuk penyebaran mandiri (SCD).

Pemecahan Masalah:

Untuk penyebaran yang bergantung pada kerangka kerja (FDD), konfirmasikan bahwa runtime yang benar diinstal pada sistem.

Kumpulan Aplikasi Yang Dihentikan

  • Browser: 503 Layanan Tidak Tersedia

  • Log Aplikasi: Tidak ada entri

  • ASP.NET Log stdout Modul Inti: File log tidak dibuat.

Pemecahan Masalah:

Konfirmasikan bahwa Kumpulan Aplikasi tidak dalam status Dihentikan .

Sub-aplikasi menyertakan <bagian handler>

  • Browser: Kesalahan HTTP 500.19 - Kesalahan Server Internal

  • Log Aplikasi: Tidak ada entri

  • ASP.NET Core Module stdout Log: File log aplikasi root dibuat dan menunjukkan operasi normal. File log sub-aplikasi tidak dibuat.

Pemecahan Masalah:

Konfirmasikan bahwa file web.config sub-aplikasi tidak menyertakan <handlers> bagian.

jalur log stdout salah

  • Browser: Aplikasi merespons secara normal.

  • Log Aplikasi: Peringatan: Tidak dapat membuat stdoutLogFile \?{ PATH}\path_doesnt_exist\stdout_{PROCESS ID}_{TIMESTAMP}.log, ErrorCode = -2147024893.

  • ASP.NET Log stdout Modul Inti: File log tidak dibuat.

Pemecahan Masalah:

  • Jalur stdoutLogFile yang ditentukan dalam <aspNetCore> elemen web.config tidak ada. Untuk informasi selengkapnya, lihat ASP.NET Modul Inti: Pembuatan dan pengalihan log.

  • Pengguna kumpulan aplikasi tidak memiliki akses tulis ke jalur log stdout.

Masalah umum konfigurasi aplikasi

  • Browser: Kesalahan HTTP 502.5 - Kegagalan Proses

  • Log Aplikasi: Aplikasi 'MACHINE/WEBROOT/APPHOST/{ASSEMBLY}' dengan akar fisik 'C:{PATH}' membuat proses dengan perintah '"C:{PATH}{ASSEMBLY}.{ exe|dll}" ' tetapi mengalami crash atau tidak merespons atau tidak mendengarkan port yang diberikan '{PORT}', ErrorCode = '{ERROR CODE}'

  • ASP.NET Log stdout Modul Inti: File log dibuat tetapi kosong.

Pemecahan Masalah:

Proses gagal dimulai, kemungkinan besar karena konfigurasi aplikasi atau masalah pemrograman.

Untuk mengetahui informasi selengkapnya, lihat topik berikut: