Menerbitkan aplikasi ASP.NET Core ke IIS

Tutorial ini menunjukkan cara menghosting aplikasi ASP.NET Core di server IIS.

Tutorial ini mencakup subjek berikut:

  • Instal .NET Core Hosting Bundle di Windows Server.
  • Buat situs IIS di Manajer IIS.
  • Menyebarkan aplikasi ASP.NET Core.

Prasyarat

  • .NET Core SDK diinstal pada komputer pengembangan.
  • Windows Server dikonfigurasi dengan peran server Server Web (IIS). Jika server Anda tidak dikonfigurasi untuk menghosting situs web dengan IIS, ikuti panduan di bagian konfigurasi IIS dari artikel Host ASP.NET Core di Windows dengan IIS lalu kembali ke tutorial ini.

Peringatan

Konfigurasi IIS dan keamanan situs web melibatkan konsep yang tidak tercakup dalam tutorial ini. Lihat panduan IIS dalam dokumentasi Microsoft IIS dan artikel ASP.NET Core tentang hosting dengan IIS sebelum menghosting aplikasi produksi di IIS.

Skenario penting untuk hosting IIS yang tidak tercakup dalam tutorial ini meliputi:

Memasang .NET Core Hosting Bundle

Instal .NET Core Hosting Bundle di server IIS. Bundel memasang .NET Core Runtime, .NET Core Library, dan ASP.NET Core Module. Modul ini memungkinkan aplikasi ASP.NET Core berjalan di belakang IIS.

Unduh alat penginstal menggunakan tautan berikut:

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

  1. Jalankan alat penginstal di server IIS.

  2. Mulai ulang server atau jalankan net stop was /y diikuti dengan net start w3svc dalam shell perintah.

Membuat situs IIS

  1. Di server IIS, buat folder untuk berisi folder dan file aplikasi yang diterbitkan. Pada langkah berikut, jalur folder disediakan ke IIS sebagai jalur fisik ke aplikasi. Untuk informasi lebih lanjut tentang folder penyebaran dan tata letak file aplikasi, lihat Struktur direktori ASP.NET Core.

  2. Di Manajer IIS, buka node server di panel Koneksi. Klik kanan folder Situs. Pilih Tambahkan Situs Web dari menu kontekstual.

  3. Berikan Nama situs dan atur jalur Fisik ke folder penyebaran aplikasi yang Anda buat. Berikan konfigurasi Pengikatan dan buat situs web dengan memilih OK.

    Peringatan

    Pengikatan wildcard tingkat atas (http://*:80/ dan http://+:80) tidak boleh digunakan. Pengikatan wildcard tingkat atas dapat mengekspos aplikasi Anda terhadap kerentanan keamanan. Ini berlaku untuk wildcard kuat dan lemah. Gunakan nama host eksplisit alih-alih wildcard. Pengikatan wildcard subdomain (misalnya, *.mysub.com) tidak memiliki risiko keamanan ini jika Anda mengontrol seluruh domain induk (alih-alih *.com, yang rentan). Lihat RFC 9110: Semantik HTTP (Bagian 7.2. Host dan :authority) untuk informasi lebih lanjut.

  4. Konfirmasikan bahwa identitas model proses memiliki izin yang tepat.

    Jika identitas default kumpulan aplikasi (ModelIdentity> Proses) diubah dari ApplicationPoolIdentity ke identitas lain, verifikasi bahwa identitas baru memiliki izin yang diperlukan untuk mengakses folder aplikasi, database, dan sumber daya lain yang diperlukan. Misalnya, kelompok aplikasi memerlukan akses baca dan tulis ke folder tempat aplikasi membaca dan menulis file.

Membuat aplikasi ASP.NET Core Razor Pages

Ikuti tutorial Mulai menggunakan ASP.NET Core untuk membuat Razor aplikasi Pages.

Menerbitkan dan menyebarkan aplikasi

Menerbitkan aplikasi berarti menghasilkan aplikasi yang dikompilasi yang dapat dihosting oleh server. Menyebarkan aplikasi berarti memindahkan aplikasi yang diterbitkan ke sistem hosting. Langkah penerbitan ditangani oleh .NET Core SDK, sementara langkah penyebaran dapat ditangani oleh berbagai pendekatan. Tutorial ini mengadopsi pendekatan penyebaran folder , di mana:

  • Aplikasi diterbitkan ke folder.
  • Konten folder dipindahkan ke folder situs IIS ( jalur Fisik ke situs di Manajer IIS).
  1. Klik kanan proyek di Penjelajah Solusi dan pilih Terbitkan.
  2. Dalam dialog Pilih target penerbitan, pilih opsi Terbitkan folder.
  3. Atur jalur Folder atau Berbagi File.
    • Jika Anda membuat folder untuk situs IIS yang tersedia di komputer pengembangan sebagai berbagi jaringan, berikan jalur ke berbagi. Pengguna saat ini harus memiliki akses tulis untuk menerbitkan ke berbagi.
    • Jika Anda tidak dapat menyebarkan langsung ke folder situs IIS di server IIS, terbitkan ke folder di media yang dapat dilepas dan pindahkan aplikasi yang diterbitkan secara fisik ke folder situs IIS di server, yang merupakan jalur Fisik situs di IIS Manager. Pindahkan konten bin/Release/{TARGET FRAMEWORK}/publish folder ke folder situs IIS di server, yang merupakan jalur Fisik situs di Manajer IIS.
  4. Klik tombol Terbitkan.

Telusuri situs web

Aplikasi ini dapat diakses di browser setelah menerima permintaan pertama. Buat permintaan ke aplikasi di pengikatan titik akhir yang Anda tetapkan di Manajer IIS untuk situs tersebut.

Langkah berikutnya

Dalam tutorial ini, Anda mempelajari cara:

  • Instal .NET Core Hosting Bundle di Windows Server.
  • Buat situs IIS di Manajer IIS.
  • Menyebarkan aplikasi ASP.NET Core.

Untuk mempelajari selengkapnya tentang menghosting aplikasi ASP.NET Core di IIS, lihat artikel Gambaran Umum IIS:

Sumber Daya Tambahan:

Artikel dalam kumpulan dokumentasi ASP.NET Core

Artikel yang berkaitan dengan penyebaran aplikasi ASP.NET Core

Artikel tentang konfigurasi HTTPS IIS

Artikel tentang IIS dan Windows Server

Sumber daya penyebaran untuk administrator IIS