Dukungan IIS waktu pengembangan di Visual Studio untuk ASP.NET Core

Oleh Sourabh Shirhatti

Artikel ini menjelaskan dukungan Visual Studio untuk penelusuran kesalahan ASP.NET aplikasi Core yang berjalan dengan IIS di Windows Server. Topik ini menjelaskan cara mengaktifkan skenario ini dan menyiapkan proyek.

Prasyarat

  • Visual Studio untuk Windows
  • ASP.NET dan beban kerja pengembangan web
  • Beban kerja pengembangan lintas platform .NET Core
  • Sertifikat keamanan X.509 (untuk dukungan HTTPS)

Mengaktifkan IIS

  1. Di Windows, navigasikan ke Panel Kontrol> Program>program dan fitur>Aktifkan atau nonaktifkan fitur Windows (sisi kiri layar).
  2. Pilih kotak centang Layanan Informasi Internet. Pilih OK.

Penginstalan IIS mungkin memerlukan mulai ulang sistem.

Mengonfigurasi IIS

IIS harus memiliki situs web yang dikonfigurasi dengan yang berikut:

  • Nama host: Biasanya, Situs Web Default digunakan dengan namalocalhostHost . Namun, situs web IIS yang valid dengan nama host unik berfungsi.
  • Pengikatan Situs
    • Untuk aplikasi yang memerlukan HTTPS, buat pengikatan ke port 443 dengan sertifikat. Biasanya, Sertifikat Pengembangan Ekspres IIS digunakan, tetapi sertifikat yang valid berfungsi.
    • Untuk aplikasi yang menggunakan HTTP, konfirmasikan keberadaan pengikatan ke port 80 atau buat pengikatan ke port 80 untuk situs baru.
    • Gunakan satu pengikatan untuk HTTP atau HTTPS. Pengikatan ke port HTTP dan HTTPS secara bersamaan tidak didukung.

Mengaktifkan dukungan IIS waktu pengembangan di Visual Studio

  1. Luncurkan alat penginstal Visual Studio.

  2. Pilih Ubah untuk penginstalan Visual Studio yang Anda rencanakan untuk digunakan untuk dukungan waktu pengembangan IIS.

  3. Untuk ASP.NET dan beban kerja pengembangan web, temukan dan instal komponen dukungan IIS Waktu pengembangan.

    Komponen tercantum di bagian Opsional di bawah Dukungan IIS Waktu pengembangan di panel Detail penginstalan di sebelah kanan beban kerja. Komponen menginstal modul ASP.NET Core, yang merupakan modul IIS asli yang diperlukan untuk menjalankan aplikasi ASP.NET Core dengan IIS.

Mengonfigurasi proyek

Pengalihan HTTPS

Untuk proyek baru yang memerlukan HTTPS, pilih kotak centang untuk Mengonfigurasi HTTPS di jendela Buat Aplikasi Web ASP.NET Core baru. Memilih kotak centang menambahkan Pengalihan HTTPS dan Middleware HSTS ke aplikasi saat dibuat.

Untuk proyek yang ada yang memerlukan HTTPS, gunakan Pengalihan HTTPS dan Middleware HSTS di Startup.Configure. Untuk informasi selengkapnya, lihat Menerapkan HTTPS di ASP.NET Core.

Untuk proyek yang menggunakan HTTP, Pengalihan HTTPS, dan Middleware HSTS tidak ditambahkan ke aplikasi. Tidak diperlukan konfigurasi aplikasi.

Profil peluncuran IIS

Buat profil peluncuran baru untuk menambahkan dukungan IIS waktu pengembangan:

  1. Klik kanan proyek di Penjelajah Solusi. Pilih Properti. Buka tab Debug .

  2. Untuk Profil, pilih tombol Baru . Beri nama profil "IIS" di jendela popup. Pilih OK untuk membuat profil.

  3. Untuk pengaturan Luncurkan, pilih IIS dari daftar.

  4. Pilih kotak centang untuk Luncurkan browser dan berikan URL titik akhir.

    Saat aplikasi memerlukan HTTPS, gunakan titik akhir HTTPS (https://). Untuk HTTP, gunakan titik akhir HTTP (http://).

    Berikan nama host dan port yang sama dengan konfigurasi IIS yang ditentukan penggunaan sebelumnya, biasanya localhost.

    Berikan nama aplikasi di akhir URL.

    Misalnya, https://localhost/WebApplication1 (HTTPS) atau http://localhost/WebApplication1 (HTTP) adalah URL titik akhir yang valid.

  5. Di bagian Variabel lingkungan , pilih tombol Tambahkan . Berikan variabel lingkungan dengan NamaASPNETCORE_ENVIRONMENT dan NilaiDevelopment.

  6. Di area Pengaturan Server Web, atur URL Aplikasi ke nilai yang sama yang digunakan untuk URL Luncurkan titik akhir browser.

  7. Untuk pengaturan Model Hosting di Visual Studio 2019 atau yang lebih baru, pilih Default untuk menggunakan model hosting yang digunakan oleh proyek. Jika proyek menetapkan <AspNetCoreHostingModel> properti dalam file proyeknya, nilai properti (InProcess atau OutOfProcess) digunakan. Jika properti tidak ada, model hosting default aplikasi digunakan, yang sedang dalam proses. Jika aplikasi memerlukan pengaturan model hosting eksplisit yang berbeda dari model hosting normal aplikasi, atur Model Hosting ke atau In ProcessOut Of Process sesuai kebutuhan.

  8. Simpan profil.

Saat tidak menggunakan Visual Studio, tambahkan profil peluncuran secara manual ke file launch Pengaturan.json di folder Properti. Contoh berikut mengonfigurasi profil untuk menggunakan protokol HTTPS:

{
  "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iis": {
      "applicationUrl": "https://localhost/WebApplication1",
      "sslPort": 0
    }
  },
  "profiles": {
    "IIS": {
      "commandName": "IIS",
      "launchBrowser": true,
      "launchUrl": "https://localhost/WebApplication1",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    }
  }
}

Konfirmasikan bahwa applicationUrl titik akhir dan launchUrl cocok dan gunakan protokol yang sama dengan konfigurasi pengikatan IIS, baik HTTP atau HTTPS.

Jalankan proyek

Jalankan Visual Studio sebagai administrator:

  • Konfirmasikan bahwa daftar drop-down konfigurasi build diatur ke Debug.
  • Atur tombol Mulai Penelusuran Kesalahan ke profil IIS dan pilih tombol untuk memulai aplikasi.

Visual Studio dapat meminta hidupkan ulang jika tidak berjalan sebagai administrator. Jika diminta, mulai ulang Visual Studio.

Jika sertifikat pengembangan yang tidak tepercaya digunakan, browser mungkin mengharuskan Anda membuat pengecualian untuk sertifikat yang tidak tepercaya.

Catatan

Men-debug konfigurasi build Rilis dengan Just My Code dan pengoptimalan kompilator menghasilkan pengalaman yang terdegradasi. Misalnya, titik henti tidak tertembak.

Sumber Daya Tambahan:

Artikel ini menjelaskan dukungan Visual Studio untuk penelusuran kesalahan ASP.NET aplikasi Core yang berjalan dengan IIS di Windows Server. Topik ini menjelaskan cara mengaktifkan skenario ini dan menyiapkan proyek.

Prasyarat

  • Visual Studio untuk Windows
  • ASP.NET dan beban kerja pengembangan web
  • Beban kerja pengembangan lintas platform .NET Core
  • Sertifikat keamanan X.509 (untuk dukungan HTTPS)

Mengaktifkan IIS

  1. Di Windows, navigasikan ke Panel Kontrol> Program>program dan fitur>Aktifkan atau nonaktifkan fitur Windows (sisi kiri layar).
  2. Pilih kotak centang Layanan Informasi Internet. Pilih OK.

Penginstalan IIS mungkin memerlukan mulai ulang sistem.

Mengonfigurasi IIS

IIS harus memiliki situs web yang dikonfigurasi dengan yang berikut:

  • Nama host: Biasanya, Situs Web Default digunakan dengan namalocalhostHost . Namun, situs web IIS yang valid dengan nama host unik berfungsi.
  • Pengikatan Situs
    • Untuk aplikasi yang memerlukan HTTPS, buat pengikatan ke port 443 dengan sertifikat. Biasanya, Sertifikat Pengembangan Ekspres IIS digunakan, tetapi sertifikat yang valid berfungsi.
    • Untuk aplikasi yang menggunakan HTTP, konfirmasikan keberadaan pengikatan ke posting 80 atau buat pengikatan ke port 80 untuk situs baru.
    • Gunakan satu pengikatan untuk HTTP atau HTTPS. Pengikatan ke port HTTP dan HTTPS secara bersamaan tidak didukung.

Mengaktifkan dukungan IIS waktu pengembangan di Visual Studio

  1. Luncurkan alat penginstal Visual Studio.

  2. Pilih Ubah untuk penginstalan Visual Studio yang Anda rencanakan untuk digunakan untuk dukungan waktu pengembangan IIS.

  3. Untuk ASP.NET dan beban kerja pengembangan web, temukan dan instal komponen dukungan IIS Waktu pengembangan.

    Komponen tercantum di bagian Opsional di bawah Dukungan IIS Waktu pengembangan di panel Detail penginstalan di sebelah kanan beban kerja. Komponen menginstal modul ASP.NET Core, yang merupakan modul IIS asli yang diperlukan untuk menjalankan aplikasi ASP.NET Core dengan IIS.

Mengonfigurasi proyek

Pengalihan HTTPS

Untuk proyek baru yang memerlukan HTTPS, pilih kotak centang untuk Mengonfigurasi HTTPS di jendela Buat Aplikasi Web ASP.NET Core baru. Memilih kotak centang menambahkan Pengalihan HTTPS dan Middleware HSTS ke aplikasi saat dibuat.

Untuk proyek yang ada yang memerlukan HTTPS, gunakan Pengalihan HTTPS dan Middleware HSTS di Startup.Configure. Untuk informasi selengkapnya, lihat Menerapkan HTTPS di ASP.NET Core.

Untuk proyek yang menggunakan HTTP, Pengalihan HTTPS, dan Middleware HSTS tidak ditambahkan ke aplikasi. Tidak diperlukan konfigurasi aplikasi.

Profil peluncuran IIS

Buat profil peluncuran baru untuk menambahkan dukungan IIS waktu pengembangan:

  1. Klik kanan proyek di Penjelajah Solusi. Pilih Properti. Buka tab Debug .

  2. Untuk Profil, pilih tombol Baru . Beri nama profil "IIS" di jendela popup. Pilih OK untuk membuat profil.

  3. Untuk pengaturan Luncurkan, pilih IIS dari daftar.

  4. Pilih kotak centang untuk Luncurkan browser dan berikan URL titik akhir.

    Saat aplikasi memerlukan HTTPS, gunakan titik akhir HTTPS (https://). Untuk HTTP, gunakan titik akhir HTTP (http://).

    Berikan nama host dan port yang sama dengan konfigurasi IIS yang ditentukan penggunaan sebelumnya, biasanya localhost.

    Berikan nama aplikasi di akhir URL.

    Misalnya, https://localhost/WebApplication1 (HTTPS) atau http://localhost/WebApplication1 (HTTP) adalah URL titik akhir yang valid.

  5. Di bagian Variabel lingkungan , pilih tombol Tambahkan . Berikan variabel lingkungan dengan NamaASPNETCORE_ENVIRONMENT dan NilaiDevelopment.

  6. Di area Pengaturan Server Web, atur URL Aplikasi ke nilai yang sama yang digunakan untuk URL Luncurkan titik akhir browser.

  7. Untuk pengaturan Model Hosting di Visual Studio 2019 atau yang lebih baru, pilih Default untuk menggunakan model hosting yang digunakan oleh proyek. Jika proyek menetapkan <AspNetCoreHostingModel> properti dalam file proyeknya, nilai properti (InProcess atau OutOfProcess) digunakan. Jika properti tidak ada, model hosting default aplikasi digunakan, yang di luar proses. Jika aplikasi memerlukan pengaturan model hosting eksplisit yang berbeda dari model hosting normal aplikasi, atur Model Hosting ke atau In ProcessOut Of Process sesuai kebutuhan.

  8. Simpan profil.

Saat tidak menggunakan Visual Studio, tambahkan profil peluncuran secara manual ke file launch Pengaturan.json di folder Properti. Contoh berikut mengonfigurasi profil untuk menggunakan protokol HTTPS:

{
  "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iis": {
      "applicationUrl": "https://localhost/WebApplication1",
      "sslPort": 0
    }
  },
  "profiles": {
    "IIS": {
      "commandName": "IIS",
      "launchBrowser": true,
      "launchUrl": "https://localhost/WebApplication1",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    }
  }
}

Konfirmasikan bahwa applicationUrl titik akhir dan launchUrl cocok dan gunakan protokol yang sama dengan konfigurasi pengikatan IIS, baik HTTP atau HTTPS.

Jalankan proyek

Jalankan Visual Studio sebagai administrator:

  • Konfirmasikan bahwa daftar drop-down konfigurasi build diatur ke Debug.
  • Atur tombol Mulai Penelusuran Kesalahan ke profil IIS dan pilih tombol untuk memulai aplikasi.

Visual Studio dapat meminta hidupkan ulang jika tidak berjalan sebagai administrator. Jika diminta, mulai ulang Visual Studio.

Jika sertifikat pengembangan yang tidak tepercaya digunakan, browser mungkin mengharuskan Anda membuat pengecualian untuk sertifikat yang tidak tepercaya.

Catatan

Men-debug konfigurasi build Rilis dengan Just My Code dan pengoptimalan kompilator menghasilkan pengalaman yang terdegradasi. Misalnya, titik henti tidak tertembak.

Sumber Daya Tambahan: