Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel wird erläutert, wie Sie das File Transfer Protocol (FTP) oder FTPS (File Transfer Protocol Secure) verwenden, um Ihre Web-App, Ihr mobiles App-Back-End oder die API-App in Azure App Service bereitzustellen. Zum Aktivieren der FTP- oder FTPS-App-Bereitstellung ist keine Konfiguration erforderlich. Der FTP/S-Endpunkt für Ihre App ist bereits aktiv.
Hinweis
Sowohl SCM Basic Auth Publishing Credentials als auch FTP Basic Auth Publishing Credentials müssen für die FTP/S-Bereitstellung aktiviert sein. Wenn die Standardauthentifizierung deaktiviert ist, funktioniert die FTP/S-Bereitstellung nicht, und Sie können FTP/S-Anmeldeinformationen nicht im Bereitstellungscenter der App anzeigen oder konfigurieren.
Abrufen der Anmeldeinformationen für die Bereitstellung
Um Anmeldeinformationen für die Bereitstellung abzurufen, befolgen Sie die Anweisungen unter Konfigurieren von Bereitstellungsanmeldeinformationen für Azure App Service. Kopieren Sie die Anmeldeinformationen für den Anwendungsbereich für Ihre App, oder legen Sie Anmeldeinformationen für den Benutzerbereich fest und kopieren Sie sie. Sie können eine Verbindung mit dem FTP/S-Endpunkt Ihrer App herstellen, indem Sie beide Anmeldeinformationen verwenden.
Für Anmeldeinformationen im Anwendungsbereich lautet das Format für FTP/S-Benutzernamen „<app-name>\$<app-name>
“ Für Anmeldeinformationen des Benutzerbereichs lautet das Format für FTP/S-Benutzernamen „<app-name>\<username>
“. FTP/S-Endpunkte des App-Diensts werden von Apps gemeinsam genutzt, und da Anmeldeinformationen für den Benutzerbereich nicht mit einer bestimmten Ressource verknüpft sind, müssen Sie den Benutzernamen dem App-Namen vorangestellt haben.
FTP/S-Endpunkt abrufen
So rufen Sie den FTP/S-Endpunkt ab:
Wählen Sie auf der Azure-Portalseite für Ihre App im linken Navigationsmenü unter "Bereitstellung" die Option "Deployment Center" aus. Kopieren Sie auf der Registerkarte FTPS-Anmeldeinformationen die FTPS-Endpunkt-URL .
Bereitstellen von Dateien in Azure
So stellen Sie Dateien mit FTP/S in Azure bereit:
- Verwenden Sie von Ihrem FTP/S-Client wie Visual Studio, Cyberduck oder WinSCP Ihre Verbindungsinformationen, um eine Verbindung mit Ihrer App herzustellen.
- Kopieren Sie Ihre Dateien und deren Verzeichnisstruktur in das Verzeichnis "/site/wwwroot " in Azure oder das Verzeichnis "/site/wwwroot/App_Data/Jobs/" für WebJobs.
- Navigieren Sie zur URL Ihrer App, um sicherzustellen, dass die Anwendung richtig ausgeführt wird.
Hinweis
Im Gegensatz zur lokalen Git-Bereitstellung und ZIP-Bereitstellung unterstützt die FTP/S-Bereitstellung keine Buildautomatisierung wie:
- Wiederherstellen von Abhängigkeiten wie NuGet-, NPM-, PIP- und Composer-Automatisierung.
- Kompilieren von .NET-Binärdateien.
- Generieren einer web.config Datei.
Sie müssen diese erforderlichen Dateien manuell auf Ihrem lokalen Computer generieren und dann mit Ihrer App bereitstellen. Ein Node.js web.config Beispiel finden Sie unter Verwenden eines benutzerdefinierten web.config für Node-Apps.
FTPS erzwingen
FTPS ist eine sicherere Form von FTP, die Transport Layer Security (TLS) und Secure Sockets Layer (SSL) verwendet. Um die Sicherheit zu erhöhen, sollten Sie FTPS über TLS/SSL erzwingen. Sie können auch FTP und FTPS deaktivieren, wenn Sie keine FTP-Bereitstellung verwenden.
So deaktivieren Sie unverschlüsselte FTP:To disable unencrypted FTP:
Wählen Sie auf der Azure-Portalseite für Ihre App unter "Einstellungen" im linken Navigationsmenü die Option "Konfiguration" aus.
Wählen Sie auf der Registerkarte "Allgemeine Einstellungen" auf der Seite "Konfiguration" unter "Plattformeinstellungen" "FTPS" nur für den FTP-Zustand aus. Oder um FTP und FTPS vollständig zu deaktivieren, wählen Sie "Deaktiviert" aus.
Wenn Sie nur FTPS auswählen, stellen Sie sicher, dass TLS 1.2 oder höher für die Mindesteinstellungen für eingehende TLS-Einstellungen erzwungen wird. TLS 1.0 und 1.1 werden nicht für FTPS unterstützt.
Wählen Sie im oberen Bereich der Seite Speichern aus.
Problembehebung bei der FTP/S-Implementierung
- Was geschieht mit meiner App während der Bereitstellung, die zu einem Fehler oder unvorhersehbaren Verhalten führen kann?
- Was ist der erste Schritt bei der Problembehandlung bei der FTP/S-Bereitstellung?
- Warum kann ich meinen Code nicht via FTP/S übertragen und veröffentlichen?
- Wie kann ich eine Verbindung mit FTP/S im App-Dienst über den passiven Modus herstellen?
- Warum schlägt meine Verbindung fehl, wenn versucht wird, eine Verbindung über FTPS mithilfe expliziter Verschlüsselung herzustellen?
- Wie kann ich bestimmen, welche Methode zum Bereitstellen meiner App verwendet wurde?
Was geschieht mit meiner App während der Bereitstellung, die zu einem Fehler oder unvorhersehbaren Verhalten führen kann?
Offiziell unterstützte Bereitstellungsmethoden nehmen Änderungen an Dateien im Ordner "/home/site/wwwroot " vor, die zum Ausführen Ihrer App verwendet werden. Die Bereitstellung kann aufgrund gesperrter Dateien fehlschlagen. Die App verhält sich möglicherweise auch während der Bereitstellung unvorhersehbar, wenn die Dateien nicht gleichzeitig aktualisiert werden, was für eine kundenorientierte App nicht erwünscht ist.
Es gibt einige Möglichkeiten, diese Probleme zu vermeiden.
- Führen Sie Ihre App direkt aus dem ZIP-Paket aus, ohne sie zu entpacken.
- Beenden Sie die App, oder aktivieren Sie während der Bereitstellung den Offlinemodus. Weitere Informationen finden Sie unter Deal with locked files during deployment (Umgang mit gesperrten Dateien während der Bereitstellung).
- Stellen Sie sie in einem Stagingslot bereit, bei dem Automatisch tauschen aktiviert ist.
Was ist der erste Schritt bei der Problembehandlung bei der FTP/S-Bereitstellung?
Der erste Schritt zur Problembehandlung bei der FTP/S-Bereitstellung besteht darin, zwischen Bereitstellungsproblemen und Laufzeitanwendungsproblemen zu unterscheiden.
Ein Bereitstellungsproblem führt in der Regel dazu, dass keine Dateien oder falschen Dateien in Ihrer App bereitgestellt werden. Sie können Probleme beheben, indem Sie Ihre FTP/S-Bereitstellung untersuchen oder einen alternativen Bereitstellungspfad auswählen, z. B. die Quellcodeverwaltung.
Ein Laufzeitanwendungsproblem führt in der Regel zu den richtigen Dateien, die in Ihrer App bereitgestellt wurden, aber zu einem falschen App-Verhalten. Sie können Probleme beheben, indem Sie sich auf das Codeverhalten zur Laufzeit konzentrieren und bestimmte Fehlerpfade untersuchen.
Weitere Informationen finden Sie unter Bereitstellungs- und Laufzeitprobleme.
Warum kann ich meinen Code nicht per FTP/S hochladen und veröffentlichen?
Überprüfen Sie, ob Sie den richtigen Hostnamen und die richtigen Anmeldeinformationen eingegeben haben. Stellen Sie außerdem sicher, dass eine Firewall die folgenden FTP/S-Ports auf Ihrem Computer nicht blockiert:
- FTP/S Kontrollverbindung-Ports:
21
,990
- FTP/S-Datenverbindungsports:
989
,10001-10300
Wie kann ich eine Verbindung mit FTP/S im Azure App Service über den passiven Modus herstellen?
Azure App Service unterstützt die Verbindung über aktive und passive Modi. Passiver Modus wird bevorzugt, da Bereitstellungscomputer in der Regel hinter einer Firewall im Betriebssystem oder als Teil eines Heim- oder Geschäftsnetzwerks liegen. Ein Beispiel für eine Verbindung mit einem passiven Modus finden Sie unter "Verbindungsseite" (Dialogfeld "Erweiterte Websiteeinstellungen").
Warum schlägt meine Verbindung fehl, wenn versucht wird, eine Verbindung über FTPS mithilfe expliziter Verschlüsselung herzustellen?
FTPS ermöglicht das Herstellen einer expliziten oder impliziten TLS-sicheren Verbindung.
- Wenn Sie eine Verbindung mit expliziter Verschlüsselung herstellen, erfolgt die Verbindung über den Port
21
. - Wenn Sie eine Verbindung mit impliziter Verschlüsselung herstellen, wird die Verbindung über den Port
990
hergestellt.
Das verwendete URL-Format kann sich auf ihren Verbindungserfolg auswirken und hängt von Ihrer Clientanwendung ab. Das Portal zeigt die URL als ftps://
, aber wenn die URL, mit der Sie eine Verbindung herstellen, mit ftp://
beginnt, wird die Verbindung impliziert, dass sie den Port 21
verwendet. Wenn die URL mit ftps://
beginnt, ist die Verbindung implizit und erfolgt über Port 990
.
Stellen Sie sicher, dass Sie die Einstellungen nicht verwechseln, wie der Versuch, eine Verbindung zu ftps://
über den Port 21
herzustellen. Diese Einstellung kann auch bei expliziter Verschlüsselung keine Verbindung herstellen, da eine explizite Verbindung vor der AUTH
Methode als einfache FTP-Verbindung gestartet wird.
Wie kann ich bestimmen, welche Methode zum Bereitstellen meiner App verwendet wurde?
Sie können herausfinden, wie eine App bereitgestellt wurde, indem Sie die Anwendungseinstellungen auf der Azure-Portalseite überprüfen. Wählen Sie "Umgebungsvariablen" unter "Einstellungen" im linken Navigationsmenü aus. Auf der Registerkarte App-Einstellungen:
- Wenn die App mithilfe einer externen Paket-URL bereitgestellt wurde, wird die
WEBSITE_RUN_FROM_PACKAGE
Einstellung in den Anwendungseinstellungen mit einem URL-Wert angezeigt. - Wenn die App mithilfe der ZIP-Bereitstellung bereitgestellt wurde, erscheint die
WEBSITE_RUN_FROM_PACKAGE
-Einstellung mit dem Wert1
.
Wenn Sie die App mit Azure DevOps bereitgestellt haben, können Sie den Bereitstellungsverlauf im Azure DevOps-Portal anzeigen. Wenn Sie Azure Functions Core Tools verwendet haben, können Sie den Bereitstellungsverlauf im Azure-Portal anzeigen.