Sdílet prostřednictvím


Konfigurace aplikace App Service

Poznámka:

Od 1. června 2024 budou mít všechny nově vytvořené aplikace App Service možnost vytvořit jedinečný výchozí název hostitele s konvencí <app-name>-<random-hash>pojmenování .<region>..azurewebsites.net Názvy existujících aplikací se nezmění.

Příklad: myapp-ds27dh7271aah175.westus-01.azurewebsites.net

Další informace najdete v tématu Jedinečný výchozí název hostitele pro prostředek služby App Service.

Tento článek vysvětluje, jak nakonfigurovat běžná nastavení pro webové aplikace, mobilní back-end nebo aplikaci API. Informace o azure Functions najdete v referenčních informacích k nastavení aplikace pro Azure Functions.

Konfigurace nastavení aplikace

Poznámka:

  • Názvy nastavení aplikace můžou obsahovat jenom písmena, číslice (0–9), tečky (.) a podtržítka (_).
  • Speciální znaky v hodnotě nastavení aplikace musí být podle potřeby uchycené cílovým operačním systémem.

Například nastavení proměnné prostředí ve službě App Service Linux s hodnotou "pa$$w0rd\" řetězce pro nastavení aplikace by mělo být: "pa\$\$w0rd\\"

V App Service jsou nastavení aplikace proměnné předané jako proměnné prostředí kódu aplikace. V případě linuxových aplikací a vlastních kontejnerů app Service předá do kontejneru nastavení aplikace pomocí --env příznaku pro nastavení proměnné prostředí v kontejneru. V obou případech se vloží do prostředí vaší aplikace při spuštění aplikace. Když přidáte, odeberete nebo upravíte nastavení aplikace, služba App Service aktivuje restartování aplikace.

Pro vývojáře ASP.NET a ASP.NET Core se nastavení aplikace ve službě App Service podobá jejich nastavení v <appSettings> souboru Web.config nebo appsettings.json, ale hodnoty ve službě App Service přepíšou hodnoty ve službě Web.config nebo appsettings.json. Nastavení vývoje (například místní heslo MySQL) můžete udržovat v souboru Web.config nebo appsettings.json a produkčních tajných kódů (například heslo databáze Azure MySQL) bezpečně ve službě App Service. Stejný kód používá nastavení vývoje při místním ladění a při nasazení do Azure používá vaše produkční tajné kódy.

Další sady jazyků také získají nastavení aplikace jako proměnné prostředí za běhu. Konkrétní kroky pro sadu jazyků najdete v následujících tématech:

Nastavení aplikace se vždy šifrují při uložení (zašifrované neaktivní uložená data).

Poznámka:

Nastavení aplikace je také možné přeložit ze služby Key Vault pomocí odkazů služby Key Vault.

  1. Na webu Azure Portal vyhledejte a vyberte App Services a pak vyberte svou aplikaci.

    Vyhledání služby App Services

  2. V nabídce vlevo aplikace vyberte Nastavení aplikace proměnných>prostředí.

    Snímek obrazovky znázorňující, jak přejít na stránku Nastavení aplikace

    Ve výchozím nastavení jsou hodnoty nastavení aplikace na portálu z bezpečnostních důvodů skryté. Pokud chcete zobrazit skrytou hodnotu nastavení aplikace, vyberte její pole Hodnota . Pokud chcete zobrazit skryté hodnoty všech nastavení aplikace, vyberte tlačítko Zobrazit hodnoty .

  3. Pokud chcete přidat nové nastavení aplikace, vyberte Přidat. Pokud chcete upravit nastavení, klikněte na nastavení.

  4. V dialogovém okně můžete nastavení přilepit k aktuálnímu slotu.

    Poznámka:

    Ve výchozí službě Linux App Service nebo vlastním kontejneru Linuxu musí být každá vnořená struktura klíčů JSON v názvu nastavení aplikace, jako ApplicationInsights:InstrumentationKey by se pro název klíče nakonfigurovala ve službě App Service ApplicationInsights__InstrumentationKey . Jinými slovy, všechny : by měly být nahrazeny (dvojitým __ podtržítkem). Všechna období v názvu nastavení aplikace se nahradí znakem _ (jedno podtržítko).

  5. Po dokončení vyberte Použít. Nezapomeňte vybrat Možnost Použít zpět na stránce Proměnné prostředí.

Hromadná úprava nastavení aplikace

Vyberte tlačítko Upřesnit úpravy. Upravte nastavení v textové oblasti. Po dokončení vyberte OK. Nezapomeňte vybrat Možnost Použít zpět na stránce Proměnné prostředí.

Nastavení aplikace má následující formátování JSON:

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

Konfigurace připojovacích řetězců

Pro vývojáře ASP.NET a ASP.NET Core se nastavení připojovací řetězec ve službě App Service podobá jejich nastavení v <connectionStrings> souboru Web.config, ale hodnoty, které jste nastavili ve službě App Service, přepíší hodnoty ve službě Web.config. Nastavení vývoje (například soubor databáze) můžete udržovat v souboru Web.config a produkčních tajných kódů (například přihlašovací údaje služby SQL Database) bezpečně ve službě App Service. Stejný kód používá nastavení vývoje při místním ladění a při nasazení do Azure používá vaše produkční tajné kódy.

U jiných jazykových zásobníků je lepší použít nastavení aplikace, protože připojovací řetězec vyžadují speciální formátování v klíčích proměnných, aby bylo možné získat přístup k hodnotám.

Poznámka:

Existuje jeden případ, kdy můžete místo nastavení aplikace pro non-.NET jazyky použít připojovací řetězec: Některé typy databází Azure se zálohují společně s aplikací jenom v případě, že nakonfigurujete připojovací řetězec pro databázi v aplikaci App Service. Další informace najdete v tématu Vytvoření vlastní zálohy. Pokud toto automatizované zálohování nepotřebujete, použijte nastavení aplikace.

Za běhu jsou připojovací řetězec k dispozici jako proměnné prostředí s předponou následující typy připojení:

  • SQLServer: SQLCONNSTR_
  • MySQL: MYSQLCONNSTR_
  • SQLAzure: SQLAZURECONNSTR_
  • Zvyk: CUSTOMCONNSTR_
  • PostgreSQL: POSTGRESQLCONNSTR_
  • Centrum oznámení: NOTIFICATIONHUBCONNSTR_
  • Service Bus: SERVICEBUSCONNSTR_
  • Centrum událostí: EVENTHUBCONNSTR_
  • Databáze dokumentů: DOCDBCONNSTR_
  • Redis Cache: REDISCACHECONNSTR_

Poznámka:

Aplikace .NET, které cílí na PostgreSQL, Notification Hub, Service Bus, Event Hub, Document Db a Redis Cache, by měly nastavit připojovací řetězec na vlastní jako alternativní řešení známého problému v .NET EnvironmentVariablesConfigurationProvider.

Například připojovací řetězec MySQL s názvem connectionstring1 lze získat přístup jako proměnná MYSQLCONNSTR_connectionString1prostředí . Konkrétní kroky pro sadu jazyků najdete v následujících tématech:

Připojovací řetězce jsou při uložení vždy šifrované (zašifrované neaktivní).

Poznámka:

Připojovací řetězce je možné také přeložit ze služby Key Vault pomocí odkazů na službu Key Vault.

  1. Na webu Azure Portal vyhledejte a vyberte App Services a pak vyberte svou aplikaci.

    Vyhledání služby App Services

  2. V levé nabídce aplikace vyberte Připojovací řetězce proměnných> prostředí.

    Snímek obrazovky s otevřeným uživatelským rozhraním pro připojovací řetězce

    Ve výchozím nastavení jsou hodnoty pro připojovací řetězec skryté na portálu pro zabezpečení. Pokud chcete zobrazit skrytou hodnotu připojovací řetězec, vyberte její pole Hodnota. Pokud chcete zobrazit skryté hodnoty všech připojovací řetězec, vyberte tlačítko Zobrazit hodnotu.

  3. Pokud chcete přidat nový připojovací řetězec, vyberte Přidat. Pokud chcete upravit připojovací řetězec, vyberte připojovací řetězec.

  4. V dialogovém okně můžete připojovací řetězec přichytit k aktuálnímu slotu.

  5. Po dokončení vyberte Použít. Nezapomeňte vybrat Možnost Použít zpět na stránce Proměnné prostředí.

Hromadné úpravy připojovací řetězec

Vyberte tlačítko Upřesnit úpravy. Upravte připojovací řetězec v textové oblasti. Po dokončení vyberte Použít. Nezapomeňte vybrat Možnost Použít zpět na stránce Proměnné prostředí.

Připojovací řetězce mají následující formátování JSON:

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

Konfigurace nastavení zásobníku jazyka

Konfigurace obecných nastavení

Na webu Azure Portal vyhledejte a vyberte App Services a pak vyberte svou aplikaci. V nabídce vlevo aplikace vyberte Obecné nastavení konfigurace>.

Obecné nastavení

Tady můžete pro aplikaci nakonfigurovat některá běžná nastavení. Některá nastavení vyžadují vertikální navýšení kapacity na vyšší cenové úrovně.

  • Nastavení zásobníku: Softwarový zásobník pro spuštění aplikace, včetně jazyka a verzí sady SDK.

    V případě linuxových aplikací můžete vybrat verzi modulu runtime jazyka a nastavit volitelný spouštěcí příkaz nebo soubor spouštěcího příkazu.

    Obecná nastavení pro kontejnery Linuxu

  • Nastavení platformy: Umožňuje konfigurovat nastavení hostitelské platformy, včetně:

    • Bitová verze platformy: 32bitová nebo 64bitová. Jenom pro aplikace pro Windows.
    • Stav FTP: Povolte jenom FTPS nebo úplně zakažte FTP.
    • Verze HTTP: Pokud chcete povolit podporu protokolu HTTPS/2, nastavte na hodnotu 2.0.

    Poznámka:

    Většina moderních prohlížečů podporuje protokol HTTP/2 pouze přes protokol TLS, zatímco nešifrovaný provoz nadále používá protokol HTTP/1.1. Pokud chcete zajistit, aby se klientské prohlížeče připojily k vaší aplikaci pomocí protokolu HTTP/2, zabezpečte vlastní název DNS. Další informace najdete v tématu Zabezpečení vlastního názvu DNS pomocí vazby TLS/SSL ve službě Aplikace Azure Service.

    • Webové sokety: Například pro ASP.NET SignalR nebo socket.io.

    • AlwaysOn: Aplikace se načte i v případě, že neexistuje žádný provoz. Pokud funkce AlwaysOn není zapnutá (výchozí), aplikace se uvolní po 20 minutách bez příchozích požadavků. Uvolněná aplikace může způsobit vysokou latenci nových požadavků kvůli době zahřátí. Když je zapnutá funkce AlwaysOn , front-endový nástroj pro vyrovnávání zatížení každých pět minut odešle do kořenového adresáře aplikace požadavek GET. Průběžný příkaz ping zabrání uvolnění aplikace.

      Funkce AlwaysOn se vyžaduje pro průběžné webové úlohy nebo pro WebJobs, které se aktivují pomocí výrazu CRON.

    • Spřažení ARR: V nasazení s více instancemi se ujistěte, že je klient směrován do stejné instance po dobu životnosti relace. Tuto možnost můžete nastavit na Vypnuto pro bezstavové aplikace.

    • Pouze HTTPS: Při povolení se veškerý provoz HTTP přesměruje na HTTPS.

    • Minimální verze protokolu TLS: Vyberte minimální verzi šifrování TLS požadovanou vaší aplikací.

  • Ladění: Povolte vzdálené ladění pro aplikace ASP.NET, ASP.NET Core nebo Node.js . Tato možnost se automaticky vypne po 48 hodinách.

  • Příchozí klientské certifikáty: Vyžadují klientské certifikáty při vzájemném ověřování.

Konfigurace výchozích dokumentů

Toto nastavení platí jenom pro aplikace pro Windows.

Výchozí dokument je webová stránka, která se zobrazuje na kořenové adrese URL aplikace App Service. Použije se první odpovídající soubor v seznamu. Pokud aplikace používá moduly, které se směrují na základě adresy URL místo obsluhy statického obsahu, není nutné používat výchozí dokumenty.

  1. Na webu Azure Portal vyhledejte a vyberte App Services a pak vyberte svou aplikaci.

  2. V levé nabídce aplikace vyberte Výchozí dokumenty konfigurace>.

    Výchozí dokumenty

  3. Pokud chcete přidat výchozí dokument, vyberte Nový dokument. Pokud chcete odebrat výchozí dokument, vyberte Odstranit napravo.

Mapování cesty URL k adresáři

Služba App Service ve výchozím nastavení spustí aplikaci z kořenového adresáře kódu vaší aplikace. Některé webové architektury se ale nespouštějí v kořenovém adresáři. Například Laravel začíná v podadresáři public. Taková aplikace by byla přístupná například na http://contoso.com/publicadrese , ale obvykle chcete směrovat http://contoso.com do public adresáře. Pokud je spouštěcí soubor vaší aplikace v jiné složce nebo pokud má vaše úložiště více než jednu aplikaci, můžete upravit nebo přidat virtuální aplikace a adresáře.

Důležité

Virtuální adresář pro funkci fyzické cesty je k dispozici pouze v aplikacích pro Windows.

  1. Na webu Azure Portal vyhledejte a vyberte App Services a pak vyberte svou aplikaci.

  2. V levé nabídce aplikace vyberte mapování cest konfigurace>.

  3. Vyberte Nová virtuální aplikace nebo adresář.

    • Pokud chcete mapovat virtuální adresář na fyzickou cestu, nechte políčko Adresář zaškrtnuté. Zadejte virtuální adresář a odpovídající relativní (fyzickou) cestu ke kořenovému adresáři webu (D:\home).
    • Pokud chcete virtuální adresář označit jako webovou aplikaci, zrušte zaškrtnutí políčka Adresář .

    Zaškrtávací políčko Adresář

  4. Vyberte OK. Nezapomeňte vybrat Uložit na stránce Konfigurace .

Konfigurace mapování obslužných rutin

U aplikací pro Windows můžete přizpůsobit mapování obslužných rutin služby IIS a virtuální aplikace a adresáře. Mapování obslužných rutin umožňují přidat vlastní procesory skriptů pro zpracování požadavků na konkrétní přípony souborů.

Přidání vlastní obslužné rutiny:

  1. Na webu Azure Portal vyhledejte a vyberte App Services a pak vyberte svou aplikaci.

  2. V levé nabídce aplikace vyberte mapování cest konfigurace>.

    Mapování cest

  3. Vyberte Nové mapování obslužné rutiny. Obslužnou rutinu nakonfigurujte následujícím způsobem:

    • Rozšíření. Přípona souboru, kterou chcete zpracovat, například *.php nebo handler.fcgi.
    • Procesor skriptů. Absolutní cesta procesoru skriptů k vám. Požadavky na soubory, které odpovídají příponě souboru, zpracovává procesor skriptu. Pomocí cesty D:\home\site\wwwroot můžete odkazovat na kořenový adresář vaší aplikace.
    • Argumenty. Volitelné argumenty příkazového řádku pro procesor skriptu.
  4. Vyberte OK. Nezapomeňte vybrat Uložit na stránce Konfigurace .

Konfigurace vlastních kontejnerů

Další kroky