Bagikan melalui


Mengonfigurasi aplikasi App Service

Artikel ini menjelaskan cara mengonfigurasi pengaturan umum untuk aplikasi web, back end seluler, atau aplikasi API. Untuk Azure Functions, lihat Referensi pengaturan aplikasi untuk Azure Functions.

Mengonfigurasi pengaturan aplikasi

Di Azure App Service, pengaturan aplikasi adalah variabel yang diteruskan sebagai variabel lingkungan ke kode aplikasi. Kondisi berikut berlaku untuk pengaturan aplikasi:

  • Nama pengaturan aplikasi hanya boleh berisi huruf, angka (0-9), titik (.), dan garis bawah (_).
  • Karakter khusus dalam nilai pengaturan aplikasi harus di-escape sesuai dengan kebutuhan sistem operasi target.

Misalnya, untuk mengatur variabel lingkungan di App Service untuk Linux dengan nilai "pa$$w0rd\", string untuk pengaturan aplikasi harus "pa\$\$w0rd\\".

Untuk aplikasi Linux dan kontainer kustom, App Service meneruskan pengaturan aplikasi ke kontainer dengan menggunakan --env bendera untuk mengatur variabel lingkungan dalam kontainer. Dalam kedua kasus, mereka disuntikkan ke lingkungan aplikasi Anda di startup aplikasi. Saat Anda menambahkan, menghapus, atau mengedit pengaturan aplikasi, App Service memicu memulai ulang aplikasi.

Untuk pengembang ASP.NET dan ASP.NET Core, mengonfigurasi pengaturan aplikasi di App Service seperti mengonfigurasinya di dalam <appSettings>Web.config atau appsettings.json. Nilai dalam App Service mengesampingkan nilai di Web.config atau appsettings.json. Anda dapat menyimpan pengaturan pengembangan, seperti kata sandi MySQL lokal, di Web.config atau appsettings.json. Anda dapat menyimpan rahasia produksi, seperti kata sandi database Azure MySQL, dengan aman di App Service. Kode yang sama menggunakan pengaturan pengembangan ketika Anda men-debug secara lokal. Ini menggunakan rahasia produksi Anda saat Anda menyebarkannya ke Azure.

Tumpukan bahasa lain mendapatkan pengaturan aplikasi sebagai variabel lingkungan saat runtime. Untuk langkah-langkah khusus untuk setiap tumpukan bahasa, lihat:

Pengaturan aplikasi selalu dienkripsi saat disimpan (dienkripsi saat tidak aktif).

Catatan

Jika Anda menyimpan rahasia di pengaturan aplikasi, pertimbangkan menggunakan referensi Azure Key Vault. Jika rahasia Anda adalah untuk konektivitas ke sumber daya back-end, pertimbangkan opsi konektivitas yang lebih aman dan tidak memerlukan rahasia. Untuk informasi selengkapnya, lihat Mengamankan konektivitas ke layanan dan database Azure dari Azure App Service.

  1. Di portal Azure, cari dan pilih App Service, lalu pilih aplikasi Anda.

  2. Di menu sebelah kiri aplikasi , pilih>Pengaturan Variabel lingkungan. Lalu pilih Pengaturan aplikasi.

    Cuplikan layar yang memperlihatkan pilihan untuk menampilkan pengaturan aplikasi.

    Secara default, nilai untuk pengaturan aplikasi disembunyikan di portal untuk alasan keamanan. Untuk melihat nilai tersembunyi pengaturan aplikasi, di bawah Nilai, pilih Perlihatkan nilai. Untuk melihat nilai tersembunyi dari semua pengaturan aplikasi, pilih Perlihatkan nilai.

    Catatan

    Izin pengguna Baca/Tulis diperlukan untuk melihat bagian ini di portal Microsoft Azure. Peran bawaan RBAC dengan izin yang memadai adalah Pemilik, Kontributor, dan Kontributor Situs Web. Peran Pembaca saja tidak akan diizinkan untuk mengakses halaman ini.

  3. Untuk menambahkan pengaturan aplikasi baru, pilih Tambahkan. Untuk mengedit pengaturan, pilih pengaturan.

  4. Di dialog, Anda dapat menempelkan pengaturan ke slot saat ini.

    Catatan

    Dalam layanan aplikasi Linux default atau kontainer Linux kustom, struktur kunci JSON berlapis apa pun dalam nama pengaturan aplikasi perlu dikonfigurasi secara berbeda untuk nama kunci. Ganti titik dua (:) dengan dua garis bawah (__). Gantilah titik mana pun (.) dengan satu garis bawah (_). Misalnya, ApplicationInsights:InstrumentationKey perlu dikonfigurasi di App Service seperti ApplicationInsights__InstrumentationKey untuk nama kunci.

  5. Setelah selesai, pilih Terapkan. Lalu pilih Terapkan pada halaman Variabel lingkungan .

Mengedit pengaturan aplikasi secara massal

  1. Pilih Edit tingkat lanjut.
  2. Sunting pengaturan di area teks.
  3. Setelah selesai, pilih OK. Lalu pilih Terapkan pada halaman Variabel lingkungan .

Pengaturan aplikasi memiliki pemformatan JSON berikut ini:

[
  {
    "name": "<key-1>",
    "value": "<value-1>",
    "slotSetting": false
  },
  {
    "name": "<key-2>",
    "value": "<value-2>",
    "slotSetting": false
  },
  ...
]

Mengonfigurasikan string koneksi

Bagian ini menjelaskan cara mengonfigurasi string koneksi.

Catatan

Pertimbangkan opsi konektivitas yang lebih aman dan tidak memerlukan rahasia koneksi. Untuk informasi selengkapnya, lihat Mengamankan konektivitas ke layanan dan database Azure dari Azure App Service.

Untuk pengembang ASP.NET dan ASP.NET Core, mengatur string koneksi di App Service seperti mengaturnya di <connectionStrings>Web.config. Nilai yang Anda tetapkan di App Service mengambil alih nilai di Web.config. Anda dapat menyimpan pengaturan pengembangan, seperti file database, di Web.config. Anda dapat menyimpan rahasia produksi, seperti info masuk database SQL, dengan aman di App Service. Kode yang sama menggunakan pengaturan pengembangan ketika Anda men-debug secara lokal. Ini menggunakan rahasia produksi Anda saat Anda menyebarkannya ke Azure.

Untuk tumpukan bahasa lain, lebih baik menggunakan pengaturan aplikasi sebagai gantinya. String koneksi memerlukan pemformatan khusus dalam kunci variabel untuk mengakses nilai.

Ada satu kasus di mana Anda mungkin ingin menggunakan string koneksi alih-alih pengaturan aplikasi untuk bahasa non-.NET. Jenis database Azure tertentu dibackup bersamaan dengan aplikasi hanya jika Anda mengonfigurasi string koneksi untuk database pada App Service Anda. Untuk informasi selengkapnya, lihat Membuat cadangan kustom. Jika Anda tidak memerlukan cadangan otomatis ini, gunakan pengaturan aplikasi.

Pada runtime, string koneksi tersedia sebagai variabel lingkungan, diawali dengan jenis koneksi berikut:

  • SQL Server: SQLCONNSTR_
  • MySQL: MYSQLCONNSTR_
  • Azure SQL: SQLAZURECONNSTR_
  • Kustom: CUSTOMCONNSTR_
  • PostgreSQL: POSTGRESQLCONNSTR_
  • Azure Notification Hubs: NOTIFICATIONHUBCONNSTR_
  • Azure Service Bus: SERVICEBUSCONNSTR_
  • Azure Event Hubs: EVENTHUBCONNSTR_
  • Azure Cosmos DB: DOCDBCONNSTR_
  • Cache Redis: REDISCACHECONNSTR_

Catatan

Aplikasi .NET yang menargetkan cache PostgreSQL, Notification Hubs, Service Bus, Event Hubs, Azure Cosmos DB, dan Redis harus mengatur string koneksi ke Kustom sebagai solusi untuk masalah yang diketahui di .NET EnvironmentVariablesConfigurationProvider.

Misalnya, string koneksi MySQL bernama connectionstring1 dapat diakses sebagai variabel lingkungan MYSQLCONNSTR_connectionString1. Untuk langkah-langkah khusus untuk setiap tumpukan bahasa, lihat:

String koneksi selalu dienkripsi saat disimpan (dienkripsi saat tidak aktif).

Catatan

Anda juga dapat mengatasi string koneksi dari Key Vault dengan menggunakan referensi Key Vault.

  1. Di portal Azure, cari dan pilih App Service, lalu pilih aplikasi Anda.

  2. Di menu sebelah kiri aplikasi , pilih>Pengaturan Variabel lingkungan. Lalu pilih String koneksi.

    Secara default, nilai untuk string koneksi disembunyikan di portal untuk keamanan. Untuk melihat nilai tersembunyi string koneksi, di bawah Nilai, pilih Perlihatkan nilai. Untuk melihat nilai tersembunyi dari semua string koneksi, pilih Perlihatkan nilai.

  3. Untuk menambahkan string koneksi baru, pilih Tambahkan. Untuk mengedit string koneksi, pilih string koneksi.

  4. Dalam dialog, Anda dapat menempelkan string koneksi ke slot saat ini.

  5. Setelah selesai, pilih Terapkan. Lalu pilih Terapkan pada halaman Variabel lingkungan .

Mengedit string koneksi secara massal

  1. Pilih Edit tingkat lanjut.
  2. Edit string koneksi di area teks.
  3. Setelah selesai, pilih Terapkan. Jangan lupa juga untuk memilih Terapkan pada halaman Variabel lingkungan .

String koneksi memiliki pemformatan JSON berikut ini:

[
  {
    "name": "name-1",
    "value": "conn-string-1",
    "type": "SQLServer",
    "slotSetting": false
  },
  {
    "name": "name-2",
    "value": "conn-string-2",
    "type": "PostgreSQL",
    "slotSetting": false
  },
  ...
]

Konfigurasikan pengaturan tumpukan bahasa

Untuk mengonfigurasi pengaturan tumpukan bahasa, lihat sumber daya ini:

Konfigurasikan pengaturan umum

Untuk mengonfigurasi pengaturan umum, ikuti langkah-langkah untuk alat pilihan Anda.

  1. Di portal Azure, cari dan pilih App Service, lalu pilih aplikasi Anda.

  2. Di menu kiri aplikasi, pilihKonfigurasi>. Lalu pilih Pengaturan umum.

    Cuplikan layar yang memperlihatkan pilihan untuk membuka pengaturan umum.

Di sini, Anda dapat mengonfigurasi beberapa pengaturan umum untuk aplikasi. Beberapa pengaturan mengharuskan Anda untuk meningkatkan ke tingkat harga yang lebih tinggi.

  • Pengaturan tumpukan: Konfigurasikan pengaturan untuk tumpukan perangkat lunak untuk menjalankan aplikasi, termasuk bahasa dan versi SDK.

    Untuk aplikasi Linux, Anda dapat memilih versi runtime bahasa dan mengatur perintah startup opsional.

  • Pengaturan platform: Mengonfigurasi pengaturan untuk platform hosting, termasuk:

    • Platform: Pilih 32-bit atau 64-bit. Hanya untuk aplikasi Windows.

    • Status FTP: Izinkan hanya FTPS, atau nonaktifkan FTP sama sekali.

    • Versi HTTP: Atur ke 2.0 untuk mengaktifkan dukungan untuk protokol HTTPS/2 .

      Catatan

      Sebagian besar browser modern hanya mendukung protokol HTTP/2 melalui TLS. Lalu lintas yang tidak terenkripsi terus menggunakan HTTP/1.1. Untuk memastikan bahwa browser klien terhubung ke aplikasi Anda dengan HTTP/2, amankan nama DNS kustom Anda. Untuk informasi selengkapnya, lihat Memberikan keamanan untuk nama DNS kustom dengan pengikatan TLS/SSL di App Service.

    • Soket web: Konfigurasikan untuk ASP.NET SignalR atau socket.io, misalnya.

    • Selalu Aktif: Aktifkan jika Anda ingin menjaga aplikasi tetap dimuat bahkan saat tidak ada lalu lintas.

      Saat Always On dinonaktifkan (default), aplikasi dibongkar setelah 20 menit tanpa permintaan masuk. Aplikasi yang tidak aktif dapat menyebabkan latensi tinggi untuk permintaan baru karena waktu persiapannya.

      Saat Always On diaktifkan, load balancer front-end mengirimkan GET permintaan ke akar aplikasi setiap lima menit. Ping terus menerus mencegah aplikasi dihentikan.

      Always On diperlukan untuk WebJobs berkelanjutan atau untuk WebJobs yang dipicu oleh ekspresi cron.

    • Afinitas sesi: Dalam penyebaran beberapa instans, pastikan klien dirutekan ke instans yang sama selama durasi sesi. Anda dapat mengatur opsi ini ke Nonaktif untuk aplikasi tanpa status.

    • Proksi afinitas sesi: Aktifkan jika aplikasi berada di belakang proksi balik (seperti Azure Application Gateway atau Azure Front Door) dan menggunakan nama host default. Domain cookie afinitas sesi sesuai dengan nama host yang diteruskan dari proksi terbalik.

    • HTTPS Saja: Aktifkan jika Anda ingin mengalihkan semua lalu lintas HTTP ke HTTPS.

    • Versi TLS minimum: Pilih versi enkripsi TLS minimum yang diperlukan aplikasi Anda.

  • Penelusuran kesalahan: Mengaktifkan penelusuran jarak jauh untuk aplikasi ASP.NET, ASP.NET Core, atau Node.js. Opsi ini mati secara otomatis setelah 48 jam.

  • Sertifikat klien masuk: Memerlukan sertifikat klien dalam autentikasi bersama.

Konfigurasikan dokumen default

Dokumen default adalah halaman web yang muncul di URL akar aplikasi App Service. File pencocokan pertama dalam daftar digunakan. Jika aplikasi menggunakan modul yang merutekan berdasarkan URL alih-alih menyajikan konten statis, tidak perlu dokumen default.

Pengaturan untuk mengonfigurasi dokumen default hanya untuk aplikasi Windows.

  1. Di portal Azure, cari dan pilih App Service, lalu pilih aplikasi Anda.
  2. Di menu kiri aplikasi, pilih Konfigurasi. Lalu pilih Dokumen default.
  3. Untuk menambahkan dokumen default, pilih Dokumen baru. Untuk menghapus dokumen default, pilih Hapus di sebelah kanannya.

Memetakan jalur URL ke direktori

Secara default, App Service memulai aplikasi Anda dari direktori akar kode aplikasi Anda. Tetapi, kerangka kerja web tertentu tidak dimulai di direktori akar. Misalnya, Laravel dimulai di subdirektori public. Aplikasi semacam itu dapat diakses di http://contoso.com/public, misalnya, tetapi Anda biasanya ingin mengarahkan http://contoso.com ke direktori public sebagai gantinya. Jika file pengaktifan aplikasi Anda berada di folder yang berbeda, atau jika repositori Anda memiliki lebih dari satu aplikasi, Anda dapat mengedit atau menambahkan aplikasi dan direktori virtual.

Fitur pemetaan direktori virtual ke jalur fisik hanya tersedia di aplikasi Windows.

  1. Di portal Azure, cari dan pilih App Service, lalu pilih aplikasi Anda.

  2. Di menu kiri aplikasi, pilihKonfigurasi>. Lalu pilih Pemetaan jalur.

  3. Pilih Aplikasi atau direktori virtual baru. Kemudian ambil salah satu tindakan berikut:

    • Untuk memetakan direktori virtual ke jalur fisik, biarkan Direktori dipilih. Tentukan direktori virtual dan jalur relatif (fisik) yang sesuai ke root situs web (D:\home).
    • Untuk menandai direktori virtual sebagai aplikasi web, batal pilih Direktori.

    Cuplikan layar yang memperlihatkan pilihan untuk menampilkan kotak centang Direktori.

  4. Pilih OK. Lalu pilih Simpan di halaman Konfigurasi .

Mengonfigurasi pemetaan pengendali

Untuk aplikasi Windows, Anda dapat menyesuaikan pemetaan penghandel IIS dan aplikasi serta direktori virtual. Pemetaan penangan memungkinkan Anda menambahkan pemroses skrip kustom untuk mengelola permintaan ekstensi file tertentu.

Untuk menambahkan penangan kustom:

  1. Di portal Azure, cari dan pilih App Service, lalu pilih aplikasi Anda.

  2. Di menu kiri aplikasi, pilihKonfigurasi>. Lalu pilih Pemetaan jalur.

  3. Pilih Pemetaan handler baru. Konfigurasikan pengendali sebagai berikut:

    • Ekstensi. Ekstensi file yang ingin Anda tangani, seperti *.php atau handler.fcgi.
    • Prosesor Skrip. Jalur absolut dari pemroses skrip Anda. Prosesor skrip memproses permintaan ke file yang cocok dengan ekstensi file. Gunakan jalur D:\home\site\wwwroot untuk merujuk ke direktori root aplikasi Anda.
    • Argument. Argumen opsional baris perintah untuk pemroses skrip.
  4. Pilih OK. Lalu pilih Simpan di halaman Konfigurasi .

Konfigurasikan kontainer kustom