Sdílet prostřednictvím


Nasazení aplikace do služby Azure App Service pomocí FTP/S

V tomto článku se dozvíte, jak pomocí protokolu FTP (File Transfer Protocol) nebo PROTOKOLU FTPS (File Transfer Protocol Secure) nasadit webovou aplikaci, back-end mobilní aplikace nebo aplikaci API do služby Azure App Service. K povolení nasazení aplikace FTP nebo FTPS není nutná žádná konfigurace. Koncový bod FTP/S pro vaši aplikaci je již aktivní.

Poznámka:

Aby nasazení FTP/S fungovalo, musí být povoleny přihlašovací údaje pro základní ověřování publikování SCM i přihlašovací údaje pro publikování FTP. Pokud je zakázané základní ověřování, nasazení FTP/S nefunguje a v Centru nasazení aplikace nemůžete zobrazit ani nakonfigurovat přihlašovací údaje FTP/S.

Získání přihlašovacích údajů pro nasazení

Pokud chcete získat přihlašovací údaje pro nasazení, postupujte podle pokynů v tématu Konfigurace přihlašovacích údajů pro nasazení pro Azure App Service. Zkopírujte přihlašovací údaje oboru aplikace pro vaši aplikaci nebo nastavte a zkopírujte přihlašovací údaje oboru uživatele. Ke koncovému bodu FTP/S vaší aplikace se můžete připojit pomocí některé sady přihlašovacích údajů.

Pro přihlašovací údaje v rámci aplikace je formát uživatelského jména FTP/S <app-name>\$<app-name>. Pro přihlašovací údaje v uživatelském rozsahu je formát uživatelského jména FTP/S <app-name>\<username>. FTP/S koncové body služby App Service jsou sdíleny s různými aplikacemi, a protože přihlašovací údaje v uživatelském rozsahu nejsou spojeny s konkrétním prostředkem, musíte k uživatelskému jménu přidat předponu s názvem aplikace.

Získání koncového bodu FTP/S

Získání koncového bodu FTP/S:

Na stránce webu Azure Portal pro vaši aplikaci vyberte Deployment Center v části Nasazení v levé navigační nabídce. Na kartě Přihlašovací údaje FTPS zkopírujte adresu URL koncového bodu FTPS .

Nasazení souborů do Azure

Nasazení souborů do Azure pomocí FTP/S:

  1. Ze svého klienta FTP/S, jako je Visual Studio, Cyberduck nebo WinSCP, použijte informace o připojení k aplikaci.
  2. Zkopírujte soubory a jejich adresářovou strukturu do adresáře /site/wwwroot v Azure nebo do adresáře /site/wwwroot/App_Data/Jobs/ pro WebJobs.
  3. Přejděte na adresu URL aplikace a ověřte, že aplikace běží správně.

Poznámka:

Na rozdíl od místního nasazení Gitu a nasazení ZIP nasazení FTP/S nepodporuje automatizaci sestavení, například:

  • Obnovování závislostí pomocí nástrojů jako NuGet, NPM, PIP a Composer automatizací.
  • Kompilace binárních souborů .NET
  • Generování souboruweb.config

Tyto potřebné soubory musíte vygenerovat ručně na místním počítači a pak je nasadit ve své aplikaci. Viz příklad Node.jsweb.config v části Použití vlastního web.config pro aplikace Node.

Vynucení FTPS

FTPS je bezpečnější forma protokolu FTP, která používá protokol TLS (Transport Layer Security) a SSL (Secure Sockets Layer). Pro lepší zabezpečení byste měli vynutit použití FTPS prostřednictvím protokolu TLS/SSL. Pokud nepoužíváte nasazení FTP, můžete také zakázat FTP i FTPS.

Zakázání nešifrovaného ftp:

  1. Na stránce webu Azure Portal pro vaši aplikaci vyberte v části Nastavení v levé navigační nabídce možnost Konfigurace.

  2. Na kartě Obecné nastavení na stránce Konfigurace v části Nastavení platformy vyberte FTPS pouze pro stav FTP. Nebo pokud chcete ftp i FTPS úplně zakázat, vyberte Zakázáno.

    Snímek obrazovky znázorňující nastavení stavu FTP jenom na FTPS

  3. Pokud vyberete jenom FTPS, ujistěte se, že se pro nastavení minimálního příchozího protokolu TLS vynucuje protokol TLS 1.2 nebo vyšší. Protokoly TLS 1.0 a 1.1 nejsou podporované jenom pro FTPS.

  4. V horní části stránky vyberte Uložit.

Řešení potíží s nasazením FTP/S

Co se stane s aplikací během nasazování, které může způsobit selhání nebo nepředvídatelné chování?

Oficiálně podporované metody nasazení provádějí změny souborů ve složce /home/site/wwwroot , které se používají ke spuštění aplikace. Nasazení může selhat kvůli uzamčeným souborům. Aplikace se může během nasazování chovat nepředvídatelně, pokud se všechny soubory neaktualizují současně, což je nežádoucí pro aplikaci určenou zákazníkem.

Existuje několik způsobů, jak se těmto problémům vyhnout.

Jaký je první krok při řešení potíží s nasazením FTP/S?

Prvním krokem při řešení potíží s nasazením FTP/S je rozlišení mezi problémy s nasazením a problémy s aplikací modulu runtime.

  • Problém s nasazením obvykle vede k tomu, že ve vaší aplikaci nejsou nasazené žádné soubory nebo nesprávné soubory. Můžete řešit potíže zkoumáním nasazení FTP/S nebo výběrem alternativní cesty nasazení, jako je například správa zdrojového kódu.

  • Problém s aplikací za běhu obvykle vede ke správným souborům nasazeným do vaší aplikace, ale nesprávnému chování aplikace. Řešení potíží můžete vyřešit tak, že se zaměříte na chování kódu za běhu a prozkoumáte konkrétní cesty selhání.

Další informace najdete v tématu Problémy s nasazením a modulem runtime.

Proč nemůžu použít protokol FTP/S a publikovat svůj kód?

Zkontrolujte, že jste zadali správný název hostitele a přihlašovací údaje. Také se ujistěte, že brána firewall neblokuje následující FTP/S porty na vašem počítači:

  • Porty pro řízení připojení FTP/S: 21, 990
  • Porty datového připojení FTP/S: 989, 10001-10300

Jak se můžu připojit k FTP/S ve službě Azure App Service prostřednictvím pasivního režimu?

Azure App Service podporuje připojení prostřednictvím aktivního i pasivního režimu. Preferovaný je pasivní režim, protože nasazovací stroje jsou obvykle za firewallem v operačním systému nebo jako součást domácí či obchodní sítě. Příklad připojení v pasivním režimu naleznete na stránce Stránka připojení (dialogové okno Upřesnit nastavení webu).

Proč se moje připojení nezdaří při pokusu o připojení přes FTPS pomocí explicitního šifrování?

FTPS umožňuje navázat explicitní nebo implicitní zabezpečené připojení TLS.

  • Pokud se připojujete s explicitním šifrováním, připojení se naváže přes port 21.
  • Pokud se připojujete pomocí implicitního šifrování, připojení se naváže přes port 990.

Formát adresy URL, který použijete, může ovlivnit úspěch připojení a závisí na vaší klientské aplikaci. Portál zobrazuje adresu URL jako ftps://, ale pokud adresa URL, se kterou se připojujete, začíná ftp://, předpokládá se, že připojení je na portu 21. Pokud adresa URL začíná ftps://, připojení je implicitní a předpokládá se, že je na portu 990.

Ujistěte se, že nenamícháte nastavení, například pokus o připojení k ftps:// pomocí portu 21. Toto nastavení se nepodaří připojit ani pomocí explicitního šifrování, protože explicitní připojení začíná jako prosté připojení FTP před metodou AUTH .

Jak zjistím, jakou metodu se použila k nasazení aplikace?

Způsob nasazení aplikace zjistíte tak, že zkontrolujete nastavení aplikace na stránce webu Azure Portal. V levé navigační nabídce vyberte proměnné prostředí v části Nastavení . Na kartě Nastavení aplikace :

  • Pokud byla aplikace nasazena pomocí URL externího balíčku, nastavení WEBSITE_RUN_FROM_PACKAGE se zobrazí v aplikaci s hodnotou URL.
  • Pokud byla aplikace nasazena pomocí ZIP deploye, zobrazí se nastavení s hodnotou WEBSITE_RUN_FROM_PACKAGE.

Pokud jste aplikaci nasadili pomocí Azure DevOps, zobrazí se historie nasazení na portálu Azure DevOps. Pokud jste použili Nástroje Azure Functions Core Tools, můžete zobrazit historii nasazení na webu Azure Portal.