Delen via


Een App Service-app configureren

In dit artikel wordt uitgelegd hoe u algemene instellingen configureert voor web-apps, een mobiele back-end of een API-app. Zie voor Azure Functions de naslaginformatie over app-instellingen voor Azure Functions.

Notitie

Vanaf 1 juni 2024 kunnen nieuw gemaakte App Service-apps een unieke standaardhostnaam genereren die gebruikmaakt van de naamconventie <app-name>-<random-hash>.<region>.azurewebsites.net. Voorbeeld: myapp-ds27dh7271aah175.westus-01.azurewebsites.net. Bestaande app-namen blijven ongewijzigd.

Zie het blogbericht over het maken van een web-app met een unieke standaardhostnaamvoor meer informatie.

App-instellingen configureren

In Azure App Service zijn app-instellingen variabelen die als omgevingsvariabelen worden doorgegeven aan de toepassingscode. De volgende voorwaarden zijn van toepassing op app-instellingen:

  • Namen van app-instellingen kunnen alleen letters, cijfers (0-9), punten (.) en onderstrepingstekens (_) bevatten.
  • Speciale tekens in de waarde van een app-instelling moeten, zoals vereist door het doelbesturingssysteem, worden geëscaped.

Als u bijvoorbeeld een omgevingsvariabele wilt instellen in App Service voor Linux met de waarde "pa$$w0rd\", moet de tekenreeks voor de app-instelling zijn "pa\$\$w0rd\\".

Voor Linux-apps en aangepaste containers geeft App Service app-instellingen door aan de container met behulp van de --env vlag om de omgevingsvariabele in de container in te stellen. In beide gevallen worden ze bij het opstarten van de app in uw app-omgeving geïnjecteerd. Wanneer u app-instellingen toevoegt, verwijdert of bewerkt, activeert App Service het opnieuw opstarten van een app.

Voor ASP.NET- en ASP.NET Core-ontwikkelaars is het configureren van app-instellingen in App Service hetzelfde als het configureren ervan in <appSettings>Web.config of appsettings.json. De waarden in App Service overschrijven de waarden in Web.config of appsettings.json. U kunt ontwikkelinstellingen, zoals het lokale MySQL-wachtwoord, in Web.config of appsettings.json. U kunt productiegeheimen, zoals het wachtwoord van de Azure MySQL-database, veilig bewaren in App Service. Dezelfde code maakt gebruik van uw ontwikkelinstellingen wanneer u lokaal aan het debuggen bent. Hierbij worden uw productiegeheimen gebruikt wanneer u deze implementeert in Azure.

Andere taalstacks krijgen de app-instellingen als omgevingsvariabelen tijdens runtime. Zie voor stappen die specifiek zijn voor elke taalstack:

App-instellingen worden altijd versleuteld wanneer ze worden opgeslagen (versleuteld in rust).

Notitie

Als u geheimen opslaat in app-instellingen, overweeg dan het gebruik van Azure Key Vault-verwijzingen. Als uw geheimen betrekking hebben op connectiviteit met back-endresources, kunt u connectiviteitsopties overwegen die veiliger zijn en waarvoor geen geheimen nodig zijn. Zie Secure connectivity to Azure services and databases from Azure-app Service (Beveiligde connectiviteit met Azure-services en -databases) voor meer informatie.

  1. Zoek en selecteer App Services in Azure Portal en selecteer vervolgens uw app.

  2. Selecteer in het linkermenu van de app Instellingen>Omgevingsvariabelen. Selecteer vervolgens App-instellingen.

    Schermopname van selecties voor het weergeven van app-instellingen.

    Standaard worden waarden voor app-instellingen verborgen in de portal om veiligheidsredenen. Als u een verborgen waarde van een app-instelling wilt zien, selecteert u onder Waardede optie Waarde weergeven. Als u de verborgen waarden van alle app-instellingen wilt zien, selecteert u Waarden weergeven.

  3. Als u een nieuwe app-instelling wilt toevoegen, selecteert u Toevoegen. Als u een instelling wilt bewerken, selecteert u de instelling.

  4. In het dialoogvenster kunt u de instelling op de huidige sleuf plakken.

    Notitie

    In een standaard Linux-app-service of een aangepaste Linux-container moet elke geneste JSON-sleutelstructuur in de naam van de app-instelling anders worden geconfigureerd voor de sleutelnaam. Vervang een dubbele punt (:) door een dubbele onderstrepingsteken (__). Vervang een punt (.) door één onderstrepingsteken (_). Moet bijvoorbeeld ApplicationInsights:InstrumentationKey worden geconfigureerd in App Service als ApplicationInsights__InstrumentationKey voor de sleutelnaam.

  5. Wanneer u klaar bent, selecteert u Toepassen. Selecteer Toepassen op de pagina Omgevingsvariabelen.

App-instellingen bulksgewijs bewerken

  1. Selecteer Geavanceerd bewerken.
  2. Bewerk de instellingen in het tekstgebied.
  3. Selecteer OK wanneer u klaar bent. Selecteer vervolgens Toepassen op de pagina Omgevingsvariabelen.

App-instellingen hebben de volgende JSON-opmaak:

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

Verbindingsreeksen configureren

In deze sectie wordt beschreven hoe u verbindingsreeksen configureert.

Notitie

Overweeg connectiviteitsopties die veiliger zijn en waarvoor geen verbindingsgeheimen nodig zijn. Zie Secure connectivity to Azure services and databases from Azure-app Service (Beveiligde connectiviteit met Azure-services en -databases) voor meer informatie.

Voor ASP.NET- en ASP.NET Core-ontwikkelaars is het instellen van verbindingsreeksen in App Service als het <connectionStrings> instellen ervan in Web.config. De waarden die u in App Service instelt, overschrijven de waarden in Web.config. U kunt ontwikkelinstellingen, zoals een databasebestand, bewaren in Web.config. U kunt productiegeheimen, zoals SQL-databasereferenties, veilig bewaren in App Service. Dezelfde code maakt gebruik van je ontwikkelinstellingen wanneer je lokaal fouten opspoort. Hierbij worden uw productiegeheimen gebruikt wanneer u deze implementeert in Azure.

Voor andere taalstacks is het beter om in plaats daarvan app-instellingen te gebruiken. Verbindingsreeksen vereisen speciale opmaak in de variabelesleutels voor toegang tot de waarden.

Er is één geval waarin u mogelijk verbindingsreeksen wilt gebruiken in plaats van app-instellingen voor non-.NET talen. Er wordt alleen een back-up gemaakt van bepaalde Azure-databasetypen, samen met de app als u een verbindingsreeks voor de database in uw App Service-app configureert. Zie Een aangepaste back-up maken voor meer informatie. Als u deze automatische back-up niet nodig hebt, gebruikt u app-instellingen.

Tijdens runtime zijn verbindingsreeks beschikbaar als omgevingsvariabelen, voorafgegaan door de volgende verbindingstypen:

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

Notitie

.NET-apps die gericht zijn op PostgreSQL, Notification Hubs, Service Bus, Event Hubs, Azure Cosmos DB en Redis Cache, moeten de verbindingsreeks instellen op Custom als tijdelijke oplossing voor een bekend probleem in .NET EnvironmentVariablesConfigurationProvider.

Een MySQL-verbindingsreeks met de naam connectionstring1 kan bijvoorbeeld worden geopend als de omgevingsvariabeleMYSQLCONNSTR_connectionString1. Zie voor stappen die specifiek zijn voor elke taalstack:

Verbindingsreeksen worden altijd versleuteld wanneer ze worden opgeslagen (versleuteld in rust).

Notitie

U kunt verbindingsreeksen uit Key Vault ook oplossen met behulp van Key Vault-verwijzingen.

  1. Zoek en selecteer App Services in Azure Portal en selecteer vervolgens uw app.

  2. In het linkermenu van de app, selecteer Instellingen>Omgevingsvariabelen. Selecteer vervolgens Verbindingsreeksen.

    Standaard worden waarden voor verbindingsreeks s verborgen in de portal voor beveiliging. Als u een verborgen waarde van een verbindingsreeks wilt zien, selecteert u onder Waardede optie Waarde weergeven. Als u de verborgen waarden van alle verbindingsreeksen wilt zien, selecteert u Waarden weergeven.

  3. Als u een nieuwe verbindingsreeks wilt toevoegen, selecteert u Toevoegen. Als u een verbindingsreeks wilt bewerken, selecteert u de verbindingsreeks.

  4. In het dialoogvenster kunt u de verbindingsreeks aan de huidige sleuf plakken.

  5. Wanneer u klaar bent, selecteert u Toepassen. Selecteer Vervolgens Toepassen op de pagina Omgevingsvariabelen .

Verbindingsreeks bulksgewijs bewerken

  1. Selecteer Geavanceerd bewerken.
  2. Bewerk de verbindingsreeksen in het tekstgebied.
  3. Wanneer u klaar bent, selecteert u Toepassen. Vergeet niet ook Toepassen te selecteren op de pagina Omgevingsvariabelen .

Verbindingsreeksen hebben de volgende JSON-opmaak:

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

Taalstackinstellingen configureren

Zie de volgende bronnen om taalstackinstellingen te configureren:

Algemene instellingen configureren

Als u algemene instellingen wilt configureren, volgt u de stappen voor de hulpprogramma's van uw voorkeur.

  1. Zoek en selecteer App Services in Azure Portal en selecteer vervolgens uw app.

  2. Selecteer Instellingenconfiguratie> in het linkermenu van de app. Selecteer vervolgens Algemene instellingen.

    Schermopname van selecties om algemene instellingen te openen.

Hier kunt u enkele algemene instellingen voor de app configureren. Voor sommige instellingen moet u omhoog schalen naar hogere prijscategorieën.

  • Stack-instellingen: configureer instellingen voor de softwarestack om de app uit te voeren, inclusief de taal- en SDK-versies.

    Voor Linux-apps kunt u de versie van de taalruntime selecteren en een optionele opstartopdracht instellen.

  • Platforminstellingen: Configureer instellingen voor het hostingplatform, waaronder:

    • Platform: kies 32-bit of 64-bit. Alleen voor Windows-apps.

    • FTP-status: alleen FTPS toestaan of FTP helemaal uitschakelen.

    • HTTP-versie: ingesteld op 2.0 om ondersteuning voor het HTTPS/2-protocol in te schakelen.

      Notitie

      De meeste moderne browsers ondersteunen alleen het HTTP/2-protocol via TLS. Niet-versleuteld verkeer blijft HTTP/1.1 gebruiken. Beveilig uw aangepaste DNS-naam om ervoor te zorgen dat clientbrowsers verbinding maken met uw app met HTTP/2. Zie Beveiliging opgeven voor een aangepaste DNS-naam met een TLS/SSL-binding in App Service voor meer informatie.

    • Websockets: bijvoorbeeld configureren voor ASP.NET SignalR of socket.io.

    • Altijd ingeschakeld: schakel deze functie in als u de app wilt laden, zelfs als er geen verkeer is.

      Wanneer AlwaysOn is uitgeschakeld (standaard), wordt de app na 20 minuten verwijderd zonder binnenkomende aanvragen. De uitgeschakelde app kan een hoge latentie veroorzaken voor nieuwe verzoeken vanwege de opwarmtijd.

      Wanneer AlwaysOn is ingeschakeld, verzendt de front-end load balancer elke vijf minuten een GET aanvraag naar de hoofdmap van de toepassing. De doorlopende ping voorkomt dat de app wordt verwijderd.

      AlwaysOn is vereist voor continue webtaken of voor webtaken die door een cron-expressie worden geactiveerd.

    • Sessieaffiniteit: Zorg ervoor dat in een implementatie met meerdere exemplaren de client gedurende de levensduur van de sessie naar hetzelfde exemplaar wordt gerouteerd. U kunt deze optie instellen op Uit voor staatloze toepassingen.

    • Proxy voor sessieaffiniteit: schakel deze functie in als uw app zich achter een omgekeerde proxy bevindt (zoals Azure Application Gateway of Azure Front Door) en u de standaardhostnaam gebruikt. Het domein voor de sessieaffiniteitscookie komt overeen met de doorgestuurde hostnaam van de omgekeerde proxy.

    • Alleen HTTPS: schakel dit in als u al het HTTP-verkeer wilt omleiden naar HTTPS.

    • Minimale TLS-versie: selecteer de minimale TLS-versleutelingsversie die uw app nodig heeft.

  • Foutopsporing: schakel externe foutopsporing in voor ASP.NET-, ASP.NET Core- of Node.js-apps . Deze optie wordt na 48 uur automatisch uitgeschakeld.

  • Binnenkomende clientcertificaten: Vereisen clientcertificaten in wederzijdse authenticatie.

Standaarddocumenten configureren

Het standaarddocument is de webpagina die wordt weergegeven in de hoofd-URL van een App Service-app. Het eerste overeenkomende bestand in de lijst wordt gebruikt. Als de app modules gebruikt die worden gerouteerd op basis van URL in plaats van statische inhoud te leveren, is er geen standaarddocumenten nodig.

De instelling voor het configureren van standaarddocumenten is alleen voor Windows-apps.

  1. Zoek en selecteer App Services in Azure Portal en selecteer vervolgens uw app.
  2. Selecteer Configuratie in het linkermenu van de app. Selecteer vervolgens Standaarddocumenten.
  3. Als u een standaarddocument wilt toevoegen, selecteert u Nieuw document. Als u een standaarddocument wilt verwijderen, selecteert u Verwijderen rechts.

Een URL-pad koppelen aan een directory

Standaard start App Service uw app vanuit de hoofdmap van uw app-code. Bepaalde web-frameworks starten niet in de rootdirectory. Bijvoorbeeld: Laravel start in de submap public. Een dergelijke app zou bijvoorbeeld toegankelijk zijn op http://contoso.com/public, maar meestal wilt u http://contoso.com naar de public map toe leiden. Als het opstartbestand van uw app zich in een andere map bevindt of als uw opslagplaats meer dan één toepassing heeft, kunt u virtuele toepassingen en mappen bewerken of toevoegen.

De functie van het toewijzen van een virtuele map aan een fysiek pad is alleen beschikbaar in Windows-apps.

  1. Zoek en selecteer App Services in Azure Portal en selecteer vervolgens uw app.

  2. Selecteer Instellingenconfiguratie> in het linkermenu van de app. Selecteer vervolgens Padtoewijzingen.

  3. Selecteer Nieuwe virtuele toepassing of map. Voer vervolgens een van deze acties uit:

    • Als u een virtuele map wilt toewijzen aan een fysiek pad, laat u Map geselecteerd. Geef de virtuele map en het bijbehorende relatieve (fysieke) pad op naar de hoofdmap van de website (D:\home).
    • Als u een virtuele map als webtoepassing wilt markeren, schakelt u de selectie van map uit.

    Schermopname die selecties toont voor het weergeven van het selectievakje Directory.

  4. Selecteer Ok. Selecteer Vervolgens Opslaan op de pagina Configuratie .

Handlertoewijzingen configureren

Voor Windows-apps kunt u de IIS-handlertoewijzingen en virtuele toepassingen en mappen aanpassen. Met handlertoewijzingen kunt u aangepaste scriptprocessors toevoegen om aanvragen voor specifieke bestandsextensies af te handelen.

Een aangepaste handler toevoegen:

  1. Zoek en selecteer App Services in Azure Portal en selecteer vervolgens uw app.

  2. Selecteer Instellingenconfiguratie> in het linkermenu van de app. Selecteer vervolgens Padtoewijzingen.

  3. Selecteer Nieuwe handlertoewijzing. Configureer de handler als volgt:

    • Extensie. De bestandsextensie die u wilt verwerken, zoals *.php of handler.fcgi.
    • Scriptprocessor. Het absolute pad van de scriptprocessor naar u. De scriptprocessor verwerkt aanvragen naar bestanden die overeenkomen met de bestandsextensie. Gebruik het pad D:\home\site\wwwroot om te verwijzen naar de hoofdmap van uw app.
    • Argumenten. Optionele opdrachtregelargumenten voor de scriptprocessor.
  4. Selecteer Ok. Selecteer Vervolgens Opslaan op de pagina Configuratie .

Aangepaste containers configureren