Konfigurowanie aplikacji usługi App Service

W tym artykule wyjaśniono, jak skonfigurować typowe ustawienia dla aplikacji internetowych, zaplecza mobilnego lub aplikacji interfejsu API. Aby zapoznać się z usługą Azure Functions, zobacz Dokumentacja ustawień aplikacji dla usługi Azure Functions.

Konfigurowanie ustawień aplikacji

Uwaga

  • Nazwy ustawień aplikacji mogą zawierać tylko litery, cyfry (0–9), kropki (".") i podkreślenia ("_")
  • Znaki specjalne w wartości ustawienia aplikacji muszą być ucieczki zgodnie z potrzebami przez docelowy system operacyjny

Na przykład aby ustawić zmienną środowiskową w usłudze App Service Dla systemu Linux z wartością "pa$$w0rd\" ciągu ustawienia aplikacji powinny być: "pa\$\$w0rd\\"

W usłudze App Service ustawienia aplikacji to zmienne przekazywane jako zmienne środowiskowe do kodu aplikacji. W przypadku aplikacji systemu Linux i kontenerów niestandardowych usługa App Service przekazuje ustawienia aplikacji do kontenera przy użyciu --env flagi w celu ustawienia zmiennej środowiskowej w kontenerze. W obu przypadkach są one wstrzykiwane do środowiska aplikacji podczas uruchamiania aplikacji. Podczas dodawania, usuwania lub edytowania ustawień aplikacji usługa App Service wyzwala ponowne uruchomienie aplikacji.

W przypadku deweloperów ASP.NET i ASP.NET Core ustawienie ustawień aplikacji w usłudze App Service jest podobne do ustawiania ich w <appSettings> pliku Web.config lub appsettings.json, ale wartości w usłudze App Service zastępują te w pliku Web.config lub appsettings.json. Ustawienia programowania (na przykład lokalne hasło mySQL) można przechowywać w plikach Web.config lub appsettings.json i wpisach tajnych produkcyjnych (na przykład hasła bazy danych Azure MySQL) w usłudze App Service. Ten sam kod używa ustawień programowania podczas lokalnego debugowania i używa wpisów tajnych produkcyjnych podczas wdrażania na platformie Azure.

Inne stosy języków, podobnie, pobierają ustawienia aplikacji jako zmienne środowiskowe w czasie wykonywania. Aby zapoznać się z krokami specyficznymi dla stosu językowego, zobacz:

Ustawienia aplikacji są zawsze szyfrowane podczas przechowywania (szyfrowane w spoczynku).

Uwaga

Ustawienia aplikacji można również rozpoznać z usługi Key Vault przy użyciu odwołań usługi Key Vault.

  1. W witrynie Azure Portal wyszukaj i wybierz pozycję App Services, a następnie wybierz aplikację.

    Search for App Services

  2. W menu po lewej stronie aplikacji wybierz pozycję Ustawienia aplikacji konfiguracji>.

    Application Settings

    Wartości ustawień aplikacji są domyślnie ukryte w portalu ze względów bezpieczeństwa. Aby wyświetlić ukrytą wartość ustawienia aplikacji, wybierz jego pole Wartość . Aby wyświetlić ukryte wartości wszystkich ustawień aplikacji, wybierz przycisk Pokaż wartości .

  3. Aby dodać nowe ustawienie aplikacji, wybierz pozycję Nowe ustawienie aplikacji. Aby edytować ustawienie, wybierz przycisk Edytuj po prawej stronie.

  4. W oknie dialogowym możesz trzymać ustawienie na bieżące miejsce.

    Uwaga

    W domyślnej usłudze aplikacji systemu Linux lub niestandardowym kontenerze systemu Linux każda zagnieżdżona struktura klucza JSON w nazwie ustawienia aplikacji, na przykład ApplicationInsights:InstrumentationKey musi być skonfigurowana w usłudze App Service jako ApplicationInsights__InstrumentationKey nazwę klucza. Innymi słowy, każdy : element powinien zostać zastąpiony znakiem __ (podwójne podkreślenie). Wszystkie kropki w nazwie ustawienia aplikacji zostaną zastąpione znakiem _ (pojedyncze podkreślenie).

  5. Po zakończeniu wybierz pozycję Aktualizuj. Nie zapomnij wybrać opcji Zapisz z powrotem na stronie Konfiguracja .

Zbiorcze edytowanie ustawień aplikacji

Wybierz przycisk Edytuj zaawansowane. Edytuj ustawienia w obszarze tekstowym. Po zakończeniu wybierz pozycję Aktualizuj. Nie zapomnij wybrać opcji Zapisz z powrotem na stronie Konfiguracja .

Ustawienia aplikacji mają następujące formatowanie JSON:

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

Konfigurowanie parametrów połączenia

W witrynie Azure Portal wyszukaj i wybierz pozycję App Services, a następnie wybierz aplikację. W menu po lewej stronie aplikacji wybierz pozycję Ustawienia aplikacji konfiguracji>.

Application Settings

W przypadku deweloperów ASP.NET i ASP.NET Core ustawienie parametry połączenia w usłudze App Service przypomina ustawienie ich w <connectionStrings> pliku Web.config, ale wartości ustawione w usłudze App Service zastępują te w pliku Web.config. Ustawienia programowania (na przykład plik bazy danych) można przechowywać w wpisach tajnych Web.config i produkcyjnych (na przykład poświadczeń usługi SQL Database) w usłudze App Service. Ten sam kod używa ustawień programowania podczas lokalnego debugowania i używa wpisów tajnych produkcyjnych podczas wdrażania na platformie Azure.

W przypadku innych stosów języków lepiej użyć ustawień aplikacji, ponieważ parametry połączenia wymagają specjalnego formatowania w kluczach zmiennych w celu uzyskania dostępu do wartości.

Uwaga

Istnieje jeden przypadek, w którym można użyć parametry połączenia zamiast ustawień aplikacji dla języków non-.NET: niektóre typy baz danych platformy Azure są tworzone wraz z aplikacją tylko wtedy, gdy skonfigurujesz parametry połączenia dla bazy danych w aplikacji usługi App Service. Aby uzyskać więcej informacji, zobacz Tworzenie niestandardowej kopii zapasowej. Jeśli nie potrzebujesz tej automatycznej kopii zapasowej, użyj ustawień aplikacji.

W czasie wykonywania parametry połączenia są dostępne jako zmienne środowiskowe, poprzedzone następującymi typami połączeń:

  • Sqlserver: SQLCONNSTR_
  • Mysql: MYSQLCONNSTR_
  • SQLAzure: SQLAZURECONNSTR_
  • Niestandardowe: CUSTOMCONNSTR_
  • Postgresql: POSTGRESQLCONNSTR_

Uwaga

Aplikacje platformy .NET przeznaczone dla bazy danych PostgreSQL powinny ustawić parametry połączenia na Wartość Niestandardowa jako obejście problemu w środowisku .NETVariablesConfigurationProvider

Na przykład można uzyskać dostęp do parametry połączenia MySQL o nazwie connectionstring1 jako zmiennej środowiskowej MYSQLCONNSTR_connectionString1. Aby zapoznać się z krokami specyficznymi dla stosu językowego, zobacz:

ciągi Połączenie ion są zawsze szyfrowane podczas przechowywania (zaszyfrowane w spoczynku).

Uwaga

Ciągi Połączenie ion można również rozpoznać z Usługa Key Vault korzystająca z odwołań usługi Key Vault.

  1. W witrynie Azure Portal wyszukaj i wybierz pozycję App Services, a następnie wybierz aplikację.

    Search for App Services

  2. W menu po lewej stronie aplikacji wybierz pozycję Ustawienia aplikacji konfiguracji>.

    Application Settings

    Domyślnie wartości parametry połączenia są ukryte w portalu pod kątem zabezpieczeń. Aby wyświetlić ukrytą wartość parametry połączenia, wybierz jego pole Wartość. Aby wyświetlić ukryte wartości wszystkich parametry połączenia, wybierz przycisk Pokaż wartość.

  3. Aby dodać nowy parametry połączenia, wybierz pozycję Nowy parametry połączenia. Aby edytować parametry połączenia, wybierz przycisk Edytuj po prawej stronie.

  4. W oknie dialogowym możesz trzymać parametry połączenia do bieżącego miejsca.

  5. Po zakończeniu wybierz pozycję Aktualizuj. Nie zapomnij wybrać opcji Zapisz z powrotem na stronie Konfiguracja .

Zbiorcze edytowanie parametry połączenia

Wybierz przycisk Edytuj zaawansowane. Edytuj parametry połączenia w obszarze tekstowym. Po zakończeniu wybierz pozycję Aktualizuj. Nie zapomnij wybrać opcji Zapisz z powrotem na stronie Konfiguracja .

Ciągi Połączenie ion mają następujące formatowanie JSON:

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

Konfigurowanie ustawień stosu języka

Skonfiguruj ustawienia ogólne

W witrynie Azure Portal wyszukaj i wybierz pozycję App Services, a następnie wybierz aplikację. W menu po lewej stronie aplikacji wybierz pozycję Ustawienia ogólne konfiguracji>.

General settings

W tym miejscu można skonfigurować niektóre typowe ustawienia aplikacji. Niektóre ustawienia wymagają skalowania w górę do wyższych warstw cenowych.

  • Ustawienia stosu: Stos oprogramowania do uruchamiania aplikacji, w tym wersje języka i zestawu SDK.

    W przypadku aplikacji systemu Linux możesz wybrać wersję środowiska uruchomieniowego języka i ustawić opcjonalne polecenie uruchamiania lub plik polecenia uruchamiania.

    General settings for Linux containers

  • Ustawienia platformy: umożliwia konfigurowanie ustawień platformy hostingu, w tym:

    • Bitowość platformy: 32-bitowa lub 64-bitowa. Tylko w przypadku aplikacji systemu Windows.
    • Stan FTP: zezwalaj tylko na ftps lub całkowicie wyłącza ftp.
    • Wersja HTTP: ustaw wartość 2.0 , aby włączyć obsługę protokołu HTTPS/2 .

    Uwaga

    Większość nowoczesnych przeglądarek obsługuje tylko protokół HTTP/2 za pośrednictwem protokołu TLS, podczas gdy ruch nieszyfrowany nadal używa protokołu HTTP/1.1. Aby upewnić się, że przeglądarki klienckie łączą się z aplikacją przy użyciu protokołu HTTP/2, zabezpiecz niestandardową nazwę DNS. Aby uzyskać więcej informacji, zobacz Zabezpieczanie niestandardowej nazwy DNS przy użyciu powiązania TLS/SSL w usłudze aplikacja systemu Azure.

    • Gniazda internetowe: na przykład w przypadku ASP.NET SignalR lub socket.io.

    • Zawsze włączone: aplikacja jest ładowana nawet wtedy, gdy nie ma ruchu. Gdy ustawienie Zawsze włączone nie jest włączone (ustawienie domyślne), aplikacja zostanie zwolniona po 20 minutach bez żadnych żądań przychodzących. Zwolniona aplikacja może powodować duże opóźnienie dla nowych żądań ze względu na czas rozgrzewania. Po włączeniu funkcji Always On moduł równoważenia obciążenia frontonu wysyła żądanie GET do katalogu głównego aplikacji co pięć minut. Ciągłe polecenie ping uniemożliwia zwalnianie aplikacji.

      Zawsze włączone jest wymagane w przypadku ciągłych zadań WebJob lub zadań WebJob, które są wyzwalane przy użyciu wyrażenia CRON.

    • Koligacja ARR: we wdrożeniu z wieloma wystąpieniami upewnij się, że klient jest kierowany do tego samego wystąpienia w czasie cyklu życia sesji. Tę opcję można ustawić na Wartość Wyłączone dla aplikacji bezstanowych.

    • Tylko protokół HTTPS: po włączeniu cały ruch HTTP jest przekierowywany do protokołu HTTPS.

    • Minimalna wersja protokołu TLS: wybierz minimalną wersję szyfrowania TLS wymaganą przez aplikację.

  • Debugowanie: włącz zdalne debugowanie dla aplikacji ASP.NET, ASP.NET Core lub Node.js . Ta opcja wyłącza się automatycznie po 48 godzinach.

  • Przychodzące certyfikaty klienta: wymagają certyfikatów klienta w wzajemnym uwierzytelnianiu.

Konfigurowanie dokumentów domyślnych

To ustawienie dotyczy tylko aplikacji systemu Windows.

Domyślny dokument to strona internetowa wyświetlana pod głównym adresem URL aplikacji usługi App Service. Jest używany pierwszy pasujący plik na liście. Jeśli aplikacja używa modułów, które są kierowane na podstawie adresu URL zamiast obsługiwania zawartości statycznej, nie ma potrzeby tworzenia domyślnych dokumentów.

  1. W witrynie Azure Portal wyszukaj i wybierz pozycję App Services, a następnie wybierz aplikację.

  2. W menu po lewej stronie aplikacji wybierz pozycję Dokumenty domyślne konfiguracji>.

    Default documents

  3. Aby dodać dokument domyślny, wybierz pozycję Nowy dokument. Aby usunąć dokument domyślny, wybierz pozycję Usuń po prawej stronie.

Mapuj ścieżkę adresu URL na katalog

Domyślnie usługa App Service uruchamia aplikację z katalogu głównego kodu aplikacji. Jednak niektóre struktury internetowe nie są uruchamiane w katalogu głównym. Na przykład platforma Laravel uruchamia się w podkatalogu public. Taka aplikacja będzie dostępna na przykład pod http://contoso.com/publicadresem , ale zazwyczaj chcesz przekierować http://contoso.com do public katalogu. Jeśli plik startowy aplikacji znajduje się w innym folderze lub jeśli repozytorium ma więcej niż jedną aplikację, możesz edytować lub dodawać aplikacje wirtualne i katalogi.

Ważne

Katalog wirtualny do funkcji ścieżki fizycznej jest dostępny tylko w aplikacjach systemu Windows.

  1. W witrynie Azure Portal wyszukaj i wybierz pozycję App Services, a następnie wybierz aplikację.

  2. W menu po lewej stronie aplikacji wybierz pozycję Mapowania ścieżki konfiguracji>

  3. Wybierz pozycję Nowa aplikacja wirtualna lub katalog.

    • Aby zamapować katalog wirtualny na ścieżkę fizyczną, pozostaw zaznaczone pole wyboru Katalog . Określ katalog wirtualny i odpowiednią względną (fizyczną) ścieżkę do katalogu głównego witryny internetowej (D:\home).
    • Aby oznaczyć katalog wirtualny jako aplikację internetową, wyczyść pole wyboru Katalog .

    Directory check box

  4. Wybierz przycisk OK.

Konfigurowanie mapowań programu obsługi

W przypadku aplikacji systemu Windows można dostosować mapowania programu obsługi usług IIS oraz aplikacje wirtualne i katalogi. Mapowania programu obsługi umożliwiają dodawanie niestandardowych procesorów skryptów w celu obsługi żądań dla określonych rozszerzeń plików.

Aby dodać niestandardową procedurę obsługi:

  1. W witrynie Azure Portal wyszukaj i wybierz pozycję App Services, a następnie wybierz aplikację.

  2. W menu po lewej stronie aplikacji wybierz pozycję Mapowania ścieżki konfiguracji>.

    Path mappings

  3. Wybierz pozycję Nowe mapowanie programu obsługi. Skonfiguruj procedurę obsługi w następujący sposób:

    • Rozszerzenie. Rozszerzenie pliku, które chcesz obsłużyć, takie jak *.php lub handler.fcgi.
    • Procesor skryptów. Ścieżka bezwzględna procesora skryptu do Ciebie. Żądania do plików, które są zgodne z rozszerzeniem pliku, są przetwarzane przez procesor skryptu. Użyj ścieżki D:\home\site\wwwroot , aby odwołać się do katalogu głównego aplikacji.
    • Argumenty. Opcjonalne argumenty wiersza polecenia dla procesora skryptu.
  4. Wybierz przycisk OK.

Konfigurowanie kontenerów niestandardowych

Następne kroki