Freigeben über


FTP-Hostnamenunterstützung <hostNameSupport->

Übersicht

Das <hostNameSupport>-Element gibt an, dass die Domänennamensyntax für virtuelle Hostnamen unterstützt wird.

In FTP 7.0 wurden virtuelle FTP-Hostnamen eingeführt. Ein virtueller FTP-Hostname wird auf gleiche Weise als Teil einer Bindung angegeben wie HTTP-Hostheadernamen. Sie können beispielsweise die Bindungen mithilfe von Hostnamen wie www.contoso.com oder www.fabrikam.com für die HTTP-Bindungen und ftp.contoso.com oder ftp.fabrikam.com für die FTP-Bindungen angeben. HTTP bietet eine Möglichkeit zum Übergeben des Hostnamens in den Headern, die zwischen Client und Server übergeben werden, FTP bietet derzeit jedoch nicht dieselbe Funktionalität. Aufgrund dieser FTP-Einschränkung wird der virtuelle Hostname während des Anmeldevorgangs als Teil des Benutzernamens verwendet. Standardmäßig muss ein FTP-Client seine Anmeldeinformationen mithilfe des Pipezeichens (senkrechter Strich) bei einer Syntax wie ftp.contoso.com|username oder ftp.fabrikam.com|username angeben. Indem Sie das Attribut useDomainNameAsHostName auf true festlegen, können Sie den virtuellen Host und den Benutzernamen mithilfe der Domänennamensyntax angeben. Dadurch können Sie einen umgekehrten Schrägstrich anstelle des Pipezeichens (senkrechter Strich) verwenden. In diesem Fall würde die Syntax wie folgt aussehen: ftp.contoso.com\username oder ftp.fabrikam.com\username.

Hinweis

Sowohl FTP 7.0 als auch FTP 7.5 unterstützt den vorgeschlagenen FTP-HOST-Befehl, der nicht erfordert, dass Sie den virtuellen Hostnamen als Teil des Benutzernamens verwenden.

Kompatibilität

Version Hinweise
IIS 10.0 Das <hostNameSupport>-Element wurde in IIS 10.0 nicht geändert.
IIS 8.5 Das <hostNameSupport>-Element wurde in IIS 8.5 nicht geändert.
IIS 8.0 Das <hostNameSupport>-Element wurde in IIS 8.0 nicht geändert.
IIS 7.5 Das <hostNameSupport>-Element des <system.ftpServer>-Elements wird als Feature von IIS 7.5 bereitgestellt.
IIS 7.0 Das <hostNameSupport>-Element des <system.ftpServer>-Elements wurde in FTP 7.5 als separater Download für IIS 7.0 eingeführt.
IIS 6.0 N/V

Hinweis

Die Dienste FTP 7.0 und FTP 7.5 waren nicht im Lieferumfang von IIS 7.0 enthalten, daher mussten die Module unter der folgenden URL heruntergeladen und installiert werden:

https://www.iis.net/expand/FTP

Bei Windows 7 und Windows Server 2008 R2 wird der FTP 7.5-Dienst als Feature für IIS 7.5 bereitgestellt, sodass das Herunterladen des FTP-Diensts nicht mehr erforderlich ist.

Setup

Um die FTP-Veröffentlichung für Ihren Webserver zu unterstützen, müssen Sie den FTP-Dienst installieren. Führen Sie dazu die folgenden Schritte aus:

Windows Server 2012 oder Windows Server 2012 R2

  1. Klicken Sie auf der Taskleiste auf Server-Manager.

  2. Klicken Sie im Server-Manager auf das Menü Verwalten und dann auf Rollen und Features hinzufügen.

  3. Klicken Sie im Assistenten zum Hinzufügen von Rollen und Features auf Weiter. Wählen Sie den Installationstyp aus, und klicken Sie auf Weiter. Wählen Sie den Zielserver aus, und klicken Sie auf Weiter.

  4. Erweitern Sie auf der Seite Serverrollen den Eintrag Webserver (IIS), und wählen Sie dann FTP-Server aus.

    Hinweis

    Um die Authentifizierung mittels ASP.NET-Mitgliedschaft oder IIS-Manager für den FTP-Dienst zu unterstützen, müssen Sie zusätzlich zu FTP-Dienst die Option FTP-Erweiterbarkeit auswählen.
    Image of Web Server I I S and F T P Server pane expanded with F T P Service and F T P Extensibility selected.

  5. Klicken Sie auf Weiter, und wählen Sie dann auf der Seite Features auswählen erneut Weiter aus.

  6. Klicken Sie auf der Seite Installationsauswahl bestätigen auf Installieren.

  7. Klicken Sie auf der Seite Ergebnisse auf Schließen.

Windows 8 oder Windows 8.1

  1. Klicken Sie auf dem Startbildschirm in der unteren linken Ecke mit der rechten Maustaste auf die Schaltfläche Start, und wählen Sie dann Systemsteuerung aus.

  2. Klicken Sie in der Systemsteuerung auf Programme und Features und dann auf Windows-Features aktivieren oder deaktivieren.

  3. Erweitern Sie Internetinformationsdienste, und wählen Sie dann FTP-Server aus.

    Hinweis

    Um die Authentifizierung mittels ASP.NET-Mitgliedschaft oder IIS-Manager für den FTP-Dienst zu unterstützen, müssen Sie auch FTP-Erweiterbarkeit auswählen. Screenshot of Internet Information Services and F T P Server pane expanded showing F T P Extensibility selected.

  4. Klicken Sie auf OK.

  5. Klicken Sie auf Schließen.

Windows Server 2008 R2

  1. Klicken Sie auf der Taskleiste auf Start, zeigen Sie auf Verwaltung, und wählen Sie dann Server-Manager aus.

  2. Erweitern Sie im Hierarchiebereich des Server-Managers den Eintrag Rollen, und klicken Sie dann auf Webserver (IIS).

  3. Scrollen Sie im Bereich Webserver (IIS) zum Abschnitt Rollendienste, und klicken Sie dann auf Rollendienste hinzufügen.

  4. Erweitern Sie auf der Seite Rollendienste auswählen des Assistenten zum Hinzufügen von Rollendiensten die Option FTP-Server.

  5. Wählen Sie FTP-Dienst aus.

    Hinweis

    Um die Authentifizierung mittels ASP.NET-Mitgliedschaft oder IIS-Manager für den FTP-Dienst zu unterstützen, müssen Sie auch FTP-Erweiterbarkeit auswählen. Image of Select Role Services page in Add Role Services Wizard displaying F T P Server pane expanded and F T P Service selected.

  6. Klicken Sie auf Weiter.

  7. Klicken Sie auf der Seite Installationsauswahl bestätigen auf Installieren.

  8. Klicken Sie auf der Seite Ergebnisse auf Schließen.

Windows 7

  1. Klicken Sie auf der Taskleiste auf Start und dann auf Systemsteuerung.

  2. Klicken Sie in der Systemsteuerung auf Programme und Features und dann auf Windows-Features aktivieren oder deaktivieren.

  3. Erweitern Sie Internetinformationsdienste und dann FTP-Server.

  4. Wählen Sie FTP-Dienst aus.

    Hinweis

    Um die Authentifizierung mittels ASP.NET-Mitgliedschaft oder IIS-Manager für den FTP-Dienst zu unterstützen, müssen Sie auch FTP-Erweiterbarkeit auswählen.
    Image of Turn Windows Features on or off page showing F T P Server pane expanded with both F T P Extensibility and F T P Service selected.

  5. Klicken Sie auf OK.

Windows Server 2008 oder Windows Vista

  1. Laden Sie das Installationspaket unter folgender URL herunter:

  2. Befolgen Sie die Anweisungen in der folgenden exemplarischen Vorgehensweise, um den FTP-Dienst zu installieren:

Gewusst wie

Konfigurieren der Domänennamensyntax für virtuelle Hostnamen

Hinweis

Es gibt keine direkte Benutzeroberfläche, über die Sie das <hostNameSupport>-Element konfigurieren können. Daher wird in den folgenden Schritten das Feature für den IIS-Konfigurations-Editor verwendet.

  1. Öffnen Sie Internetinformationsdienste-Manager (IIS-Manager):

    • Vorgehensweise unter Windows Server 2012 oder Windows Server 2012 R2:

      • Klicken Sie auf der Taskleiste auf Server-Manager, dann auf Tools und danach auf Internetinformationsdienste-Manage (IIS-Manager).
    • Vorgehensweise unter Windows 8 oder Windows 8.1:

      • Halten Sie die WINDOWS-TASTE gedrückt, drücken Sie den Buchstaben X, und klicken Sie dann auf Systemsteuerung.
      • Klicken Sie auf Verwaltung, und doppelklicken Sie dann auf Internetinformationsdienste-Manager (IIS-Manager).
    • Vorgehensweise unter Windows Server 2008 oder Windows Server 2008 R2:

      • Klicken Sie auf der Taskleiste auf Start, zeigen Sie auf Verwaltung, und klicken Sie dann auf Internet Information Services-Manager (IIS-Manager).
    • Vorgehensweise unter Windows Vista oder Windows 7:

      • Klicken Sie auf der Taskleiste auf Start und dann auf Systemsteuerung.
      • Doppelklicken Sie auf Verwaltung und dann auf Internetinformationsdienste-Manager (IIS-Manager).
  2. Klicken Sie im Bereich Verbindungen auf den Servernamen.

  3. Doppelklicken Sie im Startbereich auf das Feature Konfigurations-Editor.

  4. Erweitern Sie im Dropdownmenü Abschnitt den Eintrag system.ftpServer, und klicken Sie dann auf serverRuntime.

  5. Erweitern Sie hostNameSupport- in der Listenansicht.
    Screenshot of Section drop down menu in Configuration Editor feature displaying host Name Support pane expanded in the list view.

  6. Wählen Sie in der Dropdownliste für das Attribut useDomainNameAsHostName die Option True oder False aus.

  7. Klicken Sie im Bereich Aktionen auf Übernehmen.

Hinweis

Dieser Abschnitt enthält Informationen zum Ändern Ihrer IIS-Einstellungen mithilfe des IIS-Konfigurations-Editors. Die falsche Bearbeitung Ihrer IIS-Konfigurationseinstellungen kann die IIS-Installation erheblich beschädigen. Daher müssen Sie sicherstellen, dass Sie diese Schritte sorgfältig ausführen. Zur zusätzlichen Sicherheit sollten Sie Ihre IIS-Konfigurationseinstellungen sichern, bevor Sie den IIS-Konfigurations-Editor verwenden, um Änderungen vorzunehmen. Weitere Informationen zum Sichern Ihrer IIS-Konfigurationseinstellungen und zur Verwendung des IIS-Konfigurations-Editors finden Sie in den folgenden Themen:

Konfiguration

Das <hostNameSupport>-Element des <serverRuntime>-Elements wird auf globaler Ebene in der Datei „ApplicationHost.config“ konfiguriert.

Attribute

Attribut Beschreibung
useDomainNameAsHostName Optionales Boolean -Attribut.

true, wenn Domänennamensyntax für virtuelle Hostnamen unterstützt wird, andernfalls false.

Der Standardwert ist false.

Untergeordnete Elemente

Keine.

Konfigurationsbeispiel

Im folgenden Beispiel wird ein <serverRuntime>-Element gezeigt, das den Server so konfiguriert, dass er die Domänennamensyntax für virtuelle Hostnamen zulässt.

<system.ftpServer>
    <serverRuntime>
        <hostNameSupport useDomainNameAsHostName="true" />
    </serverRuntime>
</system.ftpServer>

Beispielcode

In den folgenden Beispielen wird das <serverRuntime>-Element für einen FTP-Server so konfiguriert, dass er Domänennamensyntax für virtuelle FTP-Hostnamen zulässt.

AppCmd.exe

appcmd.exe set config -section:system.ftpServer/serverRuntime /hostNameSupport.useDomainNameAsHostName:"True" /commit:apphost

Hinweis

Legen Sie den commit-Parameter auf apphost fest, wenn Sie „AppCmd.exe“ verwenden, um diese Einstellungen zu konfigurieren. Dadurch werden die Konfigurationseinstellungen auf den entsprechenden Speicherortabschnitt in der Datei „ApplicationHost.config“ festgelegt.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using (ServerManager serverManager = new ServerManager())
      {
         Configuration config = serverManager.GetApplicationHostConfiguration();
         ConfigurationSection serverRuntimeSection = config.GetSection("system.ftpServer/serverRuntime");

         ConfigurationElement hostNameSupportElement = serverRuntimeSection.GetChildElement("hostNameSupport");
         hostNameSupportElement["useDomainNameAsHostName"] = true;

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample
   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim serverRuntimeSection As ConfigurationSection = config.GetSection("system.ftpServer/serverRuntime")

      Dim hostNameSupportElement As ConfigurationElement = serverRuntimeSection.GetChildElement("hostNameSupport")
      hostNameSupportElement("useDomainNameAsHostName") = True

      serverManager.CommitChanges()
   End Sub
End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";

var serverRuntimeSection = adminManager.GetAdminSection("system.ftpServer/serverRuntime", "MACHINE/WEBROOT/APPHOST");
var hostNameSupportElement = serverRuntimeSection.ChildElements.Item("hostNameSupport");
hostNameSupportElement.Properties.Item("useDomainNameAsHostName").Value = true;

adminManager.CommitChanges();

VBScript

Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"

Set serverRuntimeSection = adminManager.GetAdminSection("system.ftpServer/serverRuntime", "MACHINE/WEBROOT/APPHOST")
Set hostNameSupportElement = serverRuntimeSection.ChildElements.Item("hostNameSupport")
hostNameSupportElement.Properties.Item("useDomainNameAsHostName").Value = True

adminManager.CommitChanges()