Konfigurieren einer App Service-App

In diesem Artikel wird erläutert, wie Sie allgemeine Einstellungen für Web-Apps, ein mobiles Back-End oder eine API-App konfigurieren. Informationen zu Azure Functions finden Sie unter Referenz zu App-Einstellungen für Azure Functions.

Konfigurieren von App-Einstellungen

In App Service handelt es sich bei App-Einstellungen um Variablen, die als Umgebungsvariablen an den Anwendungscode übergeben werden. Bei Linux-Apps und benutzerdefinierten Containern übergibt App Service mithilfe des Flags --env App-Einstellungen an den Container, um die Umgebungsvariable im Container festzulegen. In beiden Fällen werden sie beim Start der App in Ihre App-Umgebung eingeschleust. Wenn Sie App-Einstellungen hinzufügen, entfernen oder bearbeiten, löst App Service einen App-Neustart aus.

Für ASP.NET- und ASP.NET Core-Entwickler entspricht die Festlegung von App-Einstellungen in App Service der Festlegung in <appSettings> in Web.config oder appsettings.json, aber die Werte in App Service überschreiben die in Web.config oder appsettings.json. Sie können Entwicklungseinstellungen (z. B. das lokale MySQL-Kennwort) in Web.config oder appsettings.json und Produktionsgeheimnisse (z. B. das Azure MySQL-Datenbank-Kennwort) sicher in App Service speichern. Der gleiche Code verwendet Ihre Entwicklungseinstellungen, wenn Sie lokal debuggen, und verwendet Ihre Produktionsgeheimnisse, wenn sie in Azure bereitgestellt werden.

Andere Sprachstapel erhalten die App-Einstellungen ebenfalls als Umgebungsvariablen zur Laufzeit. Sprachstapelspezifische Schritte finden Sie unter:

App-Einstellungen werden bei der Speicherung stets verschlüsselt (encrypted-at-rest).

Hinweis

App-Einstellungen können auch über Key Vault mithilfe von Key Vault-Referenzen aufgelöst werden.

  1. Suchen Sie im Azure-Portal die Option App Services, wählen Sie sie aus, und wählen Sie anschließend Ihre App aus.

    Suchen nach App Services

  2. Wählen Sie im linken Menü der App Konfiguration>Anwendungseinstellungen aus.

    Anwendungseinstellungen

    Standardmäßig werden Werte für App-Einstellungen aus Sicherheitsgründen im Portal ausgeblendet. Klicken Sie zum Anzeigen eines ausgeblendeten Werts einer App-Einstellung auf das Wert-Feld dieser Einstellung. Klicken Sie zum Anzeigen der ausgeblendeten Werte aller App-Einstellungen auf die Schaltfläche Werte anzeigen.

  3. Klicken Sie zum Hinzufügen einer neuen App-Einstellung auf Neue Anwendungseinstellung. Um eine Einstellung zu bearbeiten, klicken Sie auf die Bearbeiten-Schaltfläche auf der rechten Seite.

  4. Im Dialogfeld können Sie die Einstellung im aktuellen Slot beibehalten.

    Die Bezeichnungen von App-Einstellungen dürfen keine Punkte enthalten (.). Wenn eine App-Einstellung einen Punkt enthält, wird dieser Punkt durch einen Unterstrich im Container ersetzt.

    Hinweis

    In einem standardmäßigen Linux-App Service oder einem benutzerdefinierten Linux-Container muss jede geschachtelte JSON-Schlüsselstruktur im App-Einstellungsnamen wie ApplicationInsights:InstrumentationKey in App Service als ApplicationInsights__InstrumentationKey für den Schlüsselnamen konfiguriert werden. Mit anderen Worten: Jedes : muss durch __ (doppelter Unterstrich) ersetzt werden.

  5. Klicken Sie abschließend auf Aktualisieren. Vergessen Sie nicht, auf Speichern zu klicken, wenn Sie wieder auf der Seite Konfiguration sind.

Bearbeiten von App-Einstellungen in Massen

Klicken Sie auf die Schaltfläche Erweiterte Bearbeitung. Bearbeiten Sie die Einstellungen im Textbereich. Klicken Sie abschließend auf Aktualisieren. Vergessen Sie nicht, auf Speichern zu klicken, wenn Sie wieder auf der Seite Konfiguration sind.

App-Einstellungen haben folgende JSON-Formatierung:

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

Konfigurieren von Verbindungszeichenfolgen

Suchen Sie im Azure-Portal die Option App Services, wählen Sie sie aus, und wählen Sie anschließend Ihre App aus. Wählen Sie im linken Menü der App Konfiguration>Anwendungseinstellungen aus.

Anwendungseinstellungen

Für ASP.NET- und ASP.NET Core-Entwickler entspricht die Einstellung von Verbindungszeichenfolgen in App Service der Einstellung in <connectionStrings> in Web.config, aber die Werte, die Sie in App Service festlegen, überschreiben die in Web.config. Sie können Entwicklungseinstellungen (z. B. eine Datenbankdatei) in Web.config und Produktionsgeheimnisse (z. B. SQL-Datenbank-Anmeldeinformationen) sicher in App Service beibehalten. Der gleiche Code verwendet Ihre Entwicklungseinstellungen, wenn Sie lokal debuggen, und verwendet Ihre Produktionsgeheimnisse, wenn sie in Azure bereitgestellt werden.

Für andere Sprachstapel sollten Sie stattdessen besser App-Einstellungen verwenden, da Verbindungszeichenfolgen spezielle Formatierung in den Variablenschlüsseln erfordern, um auf die Werte zuzugreifen.

Hinweis

In einem Fall sollten Sie Verbindungszeichenfolgen anstelle von App-Einstellungen für Nicht-.NET-Sprachen verwenden: bestimmte Azure-Datenbanktypen werden nur dann, wenn Sie eine Verbindungszeichenfolge für die Datenbank in Ihrer App Service-App konfigurieren, zusammen mit der App gesichert. Weitere Informationen finden Sie unter Erstellen eines benutzerdefinierten Backups. Wenn Sie diese automatisierte Sicherung nicht benötigen, verwenden Sie App-Einstellungen.

Zur Laufzeit stehen Verbindungszeichenfolgen als Umgebungsvariablen zur Verfügung, wobei sie mit Präfixen für die folgenden Verbindungstypen versehen werden:

  • SQLServer: SQLCONNSTR_
  • MySQL: MYSQLCONNSTR_
  • SQLAzure: SQLAZURECONNSTR_
  • Benutzerdefiniert: CUSTOMCONNSTR_
  • PostgreSQL: POSTGRESQLCONNSTR_

Wenn beispielsweise eine MySQL-Verbindungszeichenfolge connectionstring1 heißt, kann sie über die Umgebungsvariable MYSQLCONNSTR_connectionString1 aufgerufen werden. Sprachstapelspezifische Schritte finden Sie unter:

Verbindungszeichenfolgen werden bei der Speicherung stets verschlüsselt (encrypted-at-rest).

Hinweis

Verbindungszeichenfolgen können auch über Key Vault mithilfe von Key Vault-Referenzen aufgelöst werden.

  1. Suchen Sie im Azure-Portal die Option App Services, wählen Sie sie aus, und wählen Sie anschließend Ihre App aus.

    Suchen nach App Services

  2. Wählen Sie im linken Menü der App Konfiguration>Anwendungseinstellungen aus.

    Anwendungseinstellungen

    Standardmäßig werden Werte für Verbindungszeichenfolgen aus Sicherheitsgründen im Portal ausgeblendet. Klicken Sie zum Anzeigen eines ausgeblendeten Werts einer Verbindungszeichenfolge auf das zugehörige Wert-Feld. Klicken Sie zum Anzeigen der ausgeblendeten Werte aller Verbindungszeichenfolgen auf die Schaltfläche Wert anzeigen.

  3. Um eine neue Verbindungszeichenfolge hinzuzufügen, klicken Sie auf Neue Verbindungszeichenfolge. Klicken Sie zum Bearbeiten der Verbindungszeichenfolge auf der rechten Seite auf die Schaltfläche Bearbeiten.

  4. Im Dialogfeld können Sie die Verbindungszeichenfolge im aktuellen Slot beibehalten.

  5. Klicken Sie abschließend auf Aktualisieren. Vergessen Sie nicht, auf Speichern zu klicken, wenn Sie wieder auf der Seite Konfiguration sind.

Massenbearbeitung von Verbindungszeichenfolgen

Klicken Sie auf die Schaltfläche Erweiterte Bearbeitung. Bearbeiten Sie die Verbindungszeichenfolgen im Textbereich. Klicken Sie abschließend auf Aktualisieren. Vergessen Sie nicht, auf Speichern zu klicken, wenn Sie wieder auf der Seite Konfiguration sind.

Verbindungszeichenfolgen haben folgende JSON-Formatierung:

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

Konfigurieren von Sprachstapeleinstellungen

Konfigurieren allgemeiner Einstellungen

Suchen Sie im Azure-Portal die Option App Services, wählen Sie sie aus, und wählen Sie anschließend Ihre App aus. Wählen Sie im linken Menü der App Konfiguration>Allgemeine Einstellungen aus.

Allgemeine Einstellungen

Hier können Sie einige allgemeine Einstellungen für die App konfigurieren. Einige Einstellungen erfordern das Hochskalieren auf höhere Tarife.

  • Stapeleinstellungen: Der Softwarestapel zum Ausführen der App, einschließlich der Sprach- und SDK-Version.

    Für Linux-Apps können Sie die Sprachlaufzeitversion auswählen und einen optionalen Startbefehl oder eine Startbefehlsdatei festlegen.

    Allgemeine Einstellungen für Linux-Container

  • Plattformeinstellungen: Ermöglicht das Konfigurieren von Einstellungen für die Hostingplattform, einschließlich:

    • FTP-Zustand: Lassen Sie nur FTPS zu, oder deaktivieren Sie FTP vollständig.

    • Bitanzahl: 32-Bit oder 64-Bit. Nur für Windows-Apps.

    • WebSocket-Protokoll: Z.B. für ASP.NET SignalR oder socket.io.

    • Always On: Hält die App auch dann geladen, wenn kein Datenverkehr stattfindet. Wenn Always On nicht aktiviert ist (Standardeinstellung), wird die App nach 20 Minuten ohne eingehende Anforderungen entladen. Die entladene App kann aufgrund ihrer Aufwärmzeit zu hoher Latenz für neue Anforderungen führen. Wenn Always On aktiviert ist, sendet der Front-End-Lastenausgleich alle fünf Minuten eine GET-Anforderung an den Anwendungsstamm. Der fortlaufende Ping verhindert, dass die App entladen wird.

      AlwaysOn ist für fortlaufende WebJobs oder WebJobs, die mithilfe eines CRON-Ausdrucks ausgelöst werden, erforderlich.

    • HTTP-Version: Legen Sie die Einstellung auf 2.0 fest, um die Unterstützung für das HTTPS/2-Protokoll zu aktivieren.

    Hinweis

    Die aktuellen Browser unterstützen das HTTP/2-Protokoll in der Regel nur über TLS, während unverschlüsselter Datenverkehr weiterhin HTTP/1.1 verwendet. Um sicherzustellen, dass Clientbrowser eine Verbindung mit Ihrer App mit HTTP/2 herstellen, sichern Sie Ihren benutzerdefinierten DNS-Namen. Weitere Informationen finden Sie unter Schützen eines benutzerdefinierten DNS-Namens mit einer TLS/SSL-Bindung in Azure App Service.

    • ARR-Affinität: In einer Bereitstellung mit mehreren Instanzen stellen Sie sicher, dass der Client für die Lebensdauer der Sitzung an die gleiche Instanz weitergeleitet wird. Sie können für zustandslose Anwendungen für diese Option Aus festlegen.
  • Debuggen: Aktivieren Sie das Remotedebuggen für ASP.NET-, ASP.NET Core- oder Node.js-Apps. Diese Option wird nach 48 Stunden automatisch deaktiviert.

  • Eingehende Clientzertifikate: erforderliche Clientzertifikate bei gegenseitiger Authentifizierung.

Konfigurieren von Standarddokumenten

Diese Einstellung gilt nur für Windows-Apps.

Das Standarddokument ist die Webseite, die unter der Stamm-URL einer App Service-App angezeigt wird. Die erste übereinstimmende Datei in der Liste wird verwendet. Wenn die App Module verwendet, die auf Grundlage der URL weiterleiten, anstatt statischen Inhalt bereitzustellen, besteht keine Notwendigkeit für Standarddokumente.

  1. Suchen Sie im Azure-Portal die Option App Services, wählen Sie sie aus, und wählen Sie anschließend Ihre App aus.

  2. Wählen Sie im linken Menü der App Konfiguration>Standarddokumente aus.

    Standarddokumente

  3. Klicken Sie zum Hinzufügen eines Standarddokuments auf Neues Dokument. Klicken Sie zum Entfernen eines Standarddokuments rechts neben dem Dokument auf Löschen.

Zuordnen eines URL-Pfads zu einem Verzeichnis

Standardmäßig startet App Service die App aus dem Stammverzeichnis des App-Codes. Manche Webframeworks starten jedoch nicht im Stammverzeichnis. Laravel startet beispielsweise im Unterverzeichnis public. Auf eine solche App kann zwar z. B. unter http://contoso.com/public zugegriffen werden, normalerweise empfiehlt es sich aber, http://contoso.com stattdessen an das Verzeichnis public weiterzuleiten. Wenn sich die Startdatei der App in einem anderen Ordner befindet oder das Repository über mehrere Anwendungen verfügt, können Sie virtuelle Anwendungen und Verzeichnisse bearbeiten oder hinzufügen.

  1. Suchen Sie im Azure-Portal die Option App Services, wählen Sie sie aus, und wählen Sie anschließend Ihre App aus.

  2. Wählen Sie im linken Menü der App Konfiguration>Pfadzuordnungen aus.

  3. Klicken Sie auf Neue virtuelle Anwendung oder neues virtuelles Verzeichnis .

    • Wenn Sie ein virtuelles Verzeichnis einem physischen Pfad zuordnen möchten, lassen Sie das Kontrollkästchen Verzeichnis aktiviert. Geben Sie das virtuelle Verzeichnis und den entsprechenden relativen (physischen) Pfad zum Stammverzeichnis der Website an (D:\home).
    • Wenn Sie ein virtuelles Verzeichnis als Webanwendung markieren möchten, deaktivieren Sie das Kontrollkästchen Verzeichnis.

    Kontrollkästchen „Verzeichnis“

  4. Klicken Sie auf OK.

Konfigurieren von Handlerzuordnungen

Für Windows-Apps können Sie die IIS-Handlerzuordnungen und virtuelle Anwendungen und Verzeichnisse anpassen. Mit Handlerzuordnungen können Sie benutzerdefinierte Skriptprozessoren hinzufügen, die Anforderungen für bestimmte Dateierweiterungen verarbeiten.

So fügen Sie einen benutzerdefinierten Handler hinzu

  1. Suchen Sie im Azure-Portal die Option App Services, wählen Sie sie aus, und wählen Sie anschließend Ihre App aus.

  2. Wählen Sie im linken Menü der App Konfiguration>Pfadzuordnungen aus.

    Pfadzuordnungen

  3. Klicken Sie auf New handler mapping (Neue Handlerzuordnung). Konfigurieren Sie den Handler folgendermaßen:

    • Erweiterung. Die Dateierweiterung, die Sie verarbeiten möchten, z. B. *.php oder handler.fcgi.
    • Skriptprozessor. Der absolute Pfad des Skriptprozessors zu Ihnen. Anforderungen für Dateien, die dieser Dateierweiterung entsprechen, werden vom Skriptprozessor verarbeitet. Verwenden Sie den Pfad D:\home\site\wwwroot , um auf das Stammverzeichnis Ihrer App zu verweisen.
    • Argumente. Optionale Befehlszeilenargumente für den Skriptprozessor.
  4. Klicken Sie auf OK.

Konfigurieren eines benutzerdefinierten Containers

Nächste Schritte