次の方法で共有


既定の FTP ディレクトリ参照設定 <directoryBrowse>

概要

<directoryBrowse> 要素は、FTP サイトでのディレクトリの参照のコンテンツ設定を指定するために使用されます。 ディレクトリの参照オプションを構成すると、FTP サイト内のすべてのディレクトリが同じ設定を使用します。 通常、ディレクトリの参照の設定はコマンド ライン FTP クライアントにのみ影響しますが、一部のグラフィカル FTP クライアントにも影響する場合があります。 たとえば、グラフィカル FTP クライアントが、MS-DOS スタイルのディレクトリの一覧と連携しない可能性があり、その場合は UNIX スタイルのディレクトリの一覧を構成する必要があります。

互換性

バージョン メモ
IIS 10.0 <directoryBrowse> 要素は IIS 10.0 では変更されませんでした。
IIS 8.5 <directoryBrowse> 要素は IIS 8.5 では変更されませんでした。
IIS 8.0 <directoryBrowse> 要素は IIS 8.0 では変更されませんでした。
IIS 7.5 <ftpServer> 要素の <directoryBrowse> 要素は、IIS 7.5 の機能として付属しています。
IIS 7.0 <ftpServer> 要素の <directoryBrowse> 要素が、IIS 7.0 用の別個のダウンロードとして FTP 7.0 で導入されました。
IIS 6.0 該当なし

Note

FTP 7.0 サービスと FTP 7.5 サービスは IIS 7.0 とは別に出荷され、次の URL からモジュールをダウンロードしてインストールする必要がありました。

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

Windows 7 と Windows Server 2008 R2 では、FTP 7.5 サービスは IIS 7.5 の機能として付属しているため、FTP サービスのダウンロードは必要なくなりました。

段取り

Web サーバーの FTP 公開をサポートするには、FTP サービスをインストールする必要があります。 そのためには、次のステップに従います。

Windows Server 2012 または Windows Server 2012 R2

  1. タスク バーで [サーバー マネージャー]をクリックします。

  2. [サーバー マネージャー] で、[管理] メニューを選択し、[役割と機能の追加] を選択します。

  3. [役割と機能の追加] ウィザードで、[次へ] をクリックします。 インストールの種類を選択し、[次へ] をクリックします。 対象サーバーを選択し、[次へ] をクリックします。

  4. [サーバーの役割] ページで、[Web サーバー (IIS)] を展開して、[FTP サーバー] を選びます。

    Note

    FTP サービスに対して ASP.NET メンバーシップ認証または IIS マネージャー認証をサポートするには、[FTP Service] に加えて[FTP 拡張] も選択する必要があります。
    役割を示す Windows Server 2012 または 2012 R 2 ウィンドウのスクリーンショット。F T P 拡張機能が強調表示されています。 .

  5. [次へ] をクリックし、[機能の選択] ページで再度 [次へ] をクリックします。

  6. [インストール オプションの確認] ページで、[インストール] をクリックします。

  7. [結果] ページで、 [閉じる]をクリックします。

Windows 8 または Windows 8.1

  1. [スタート] 画面で、ポインターを左下隅まで移動し、[スタート] ボタンを右クリックし、[コントロール パネル] をクリックします。

  2. [コントロール パネル][プログラムと機能] をクリックし、[Windows の機能の有効化または無効化] をクリックします。

  3. [インターネット インフォメーション サービス] を展開し、[FTP サーバー] を展開します。

    Note

    FTP サービスに対して ASP.NET メンバーシップ認証または IIS マネージャー認証をサポートするには、[FTP 拡張] も選択する必要があります。
    ウィンドウ 8 または 8.1 の機能画面のスクリーンショット。F T P 拡張機能が強調表示されています。

  4. OK をクリックします。

  5. 閉じるをクリックします。

Windows Server 2008 R2

  1. タスク バーで [スタート] をクリックし、[管理ツール] をポイントして、[サーバー マネージャ] をクリックします。

  2. [サーバー マネージャ] 階層ウィンドウで [役割] を展開し、[Web サーバー (IIS)] をクリックします。

  3. [Web サーバー (IIS)] ウィンドウで、[役割サービス] セクションまでスクロールし、[役割サービスの追加] をクリックします。

  4. [役割サービスの追加] ウィザード[役割サービスの選択] ページで [FTP サーバー] を展開します。

  5. [FTP Service] を選択します。

    Note

    FTP サービスに対して ASP.NET メンバーシップ認証または IIS マネージャー認証をサポートするには、[FTP 拡張] も選択する必要があります。
    Windows Server 2008 R 2 の [役割サービスの追加] 画面のスクリーンショット。F T P サービスが強調表示されています。

  6. 次へ をクリックします。

  7. [インストール オプションの確認] ページで、[インストール] をクリックします。

  8. [結果] ページで、 [閉じる]をクリックします。

Windows 7

  1. タスク バーで、[スタート][コントロール パネル] の順にクリックします。

  2. [コントロール パネル][プログラムと機能] をクリックし、[Windows の機能の有効化または無効化] をクリックします。

  3. [インターネット インフォメーション サービス][FTP サーバー] の順に展開します。

  4. [FTP Service] を選択します。

    Note

    FTP サービスに対して ASP.NET メンバーシップ認証または IIS マネージャー認証をサポートするには、[FTP 拡張] も選択する必要があります。
    [Windows 7 の機能] ウィンドウのスクリーンショット。F T P オプションは、インターネット インフォメーション サービス セクションでオンになっています。

  5. OK をクリックします。

Windows Server 2008 または Windows Vista

  1. 次の URL からインストール パッケージをダウンロードします。

  2. 次のチュートリアルの手順に従って、FTP サービスをインストールします。

操作方法

FTP ディレクトリの参照を構成する方法

  1. 次のようにインターネット インフォメーション サービス (IIS) マネージャーを開きます。

    • Windows Server 2012 または Windows Server 2012 R2 を使用している場合:

      • タスク バーで、[サーバー マネージャー] をクリックし、[ツール][インターネット インフォメーション サービス (IIS) マネージャー] の順にクリックします。
    • Windows 8 または Windows 8.1 を使用している場合:

      • Windows キーを押しながら文字 X を押し、[コントロール パネル] をクリックします。
      • [管理ツール] をクリックし、[インターネット インフォメーション サービス (IIS) マネージャー] をダブルクリックします。
    • Windows Server 2008 または Windows Server 2008 R2 を使用している場合:

      • タスク バーで、[スタート] ボタンをクリックし、[管理ツール][インターネット インフォメーション サービス (IIS) マネージャー] の順にクリックします。
    • Windows Vista または Windows 7 を使用している場合:

      • タスク バーで、[スタート][コントロール パネル] の順にクリックします。
      • [管理ツール] をダブルクリックし、[インターネット インフォメーション サービス (IIS) マネージャー] をダブルクリックします。
  2. [接続] ウィンドウで、サーバー名を展開してから、ディレクトリの参照を構成するサイト、アプリケーション、またはディレクトリに移動します。

  3. [ホーム] ペインで [FTP ディレクトリの参照] をダブルクリックします。
    メイン ウィンドウにサイト ホームの F T P オプションが表示されている [I I S マネージャー] ウィンドウのスクリーンショット。F T P ディレクトリ参照が強調表示されています。

  4. 次のオプションを構成します:

    • [ディレクトリの表示スタイル][UNIX] をクリックして選びます。
    • [仮想ディレクトリ] をクリックして選択します。
    • [空き容量] をクリックして選択します。
      メイン ウィンドウに F T P ディレクトリ参照が表示されている [I I S マネージャー] ウィンドウのスクリーンショット。
  5. [操作] ペインで [適用] をクリックします。

構成

属性

属性 説明
showFlags 省略可能なフラグ属性。

ディレクトリの一覧のオプションを指定します。
名前
LongDate 長い日付と短い日付のどちらを表示するかを指定します。

数値は 2 です。
StyleUnix UNIX スタイルのディレクトリの一覧を表示するかどうかを指定します。指定しない場合は MSDOS スタイルの一覧が表示されます。

数値は 4 です。
DisplayAvailableBytes ディレクトリ一覧に空き容量を表示するかどうかを指定します。

数値は 16 です。
DisplayVirtualDirectories 仮想ディレクトリが設定されている場合にそれを表示するかどうかを指定します。指定しない場合、仮想ディレクトリは非表示になります。

数値は 32 です。
UseGmtTime 日付と時刻を GMT で表示するかどうかを指定します。

数値は 64 です。
既定値はありません。
virtualDirectoryTimeout 省略可能な int 属性。

FTP サービスで仮想ディレクトリのタイムスタンプ情報を取得するために使用する最大時間を指定します。 しきい値に達したか、virtualDirectoryTimeout が 0 に設定されている場合は、代わりに現在の日付が使用されます。

既定値は 5 です。

子要素

なし。

構成サンプル

次の構成サンプルは、UNIX スタイルのディレクトリの一覧と、ディレクトリの一覧に使用可能なドライブ領域を表示するように構成されているサーバーの <siteDefaults> 要素の例を示しています。

<siteDefaults>
   <ftpServer>
      <directoryBrowse showFlags="StyleUnix, DisplayAvailableBytes" />
   </ftpServer>
</siteDefaults>

サンプル コード

次のコード サンプルは、UNIX スタイルのディレクトリの一覧とディレクトリの一覧に使用可能なドライブ領域を表示するように FTP サイトの既定値を構成します。

AppCmd.exe

appcmd.exe set config -section:system.applicationHost/sites /siteDefaults.ftpServer.directoryBrowse.showFlags:"StyleUnix, DisplayAvailableBytes" /commit:apphost

Note

AppCmd.exe を使用してこれらの設定を構成するときは、commit パラメーターを必ず apphost に設定する必要があります。 これで、ApplicationHost.config ファイルの適切な場所セクションに構成設定がコミットされます。

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 sitesSection = config.GetSection("system.applicationHost/sites");
            ConfigurationElement siteDefaultsElement = sitesSection.GetChildElement("siteDefaults");
            ConfigurationElement ftpServerElement = siteDefaultsElement.GetChildElement("ftpServer");

            ConfigurationElement directoryBrowseElement = ftpServerElement.GetChildElement("directoryBrowse");
            directoryBrowseElement["showFlags"] = @"StyleUnix, DisplayAvailableBytes";

            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 sitesSection As ConfigurationSection = config.GetSection("system.applicationHost/sites")
        Dim siteDefaultsElement As ConfigurationElement = sitesSection.GetChildElement("siteDefaults")
        Dim ftpServerElement As ConfigurationElement = siteDefaultsElement.GetChildElement("ftpServer")

        Dim directoryBrowseElement As ConfigurationElement = ftpServerElement.GetChildElement("directoryBrowse")
        directoryBrowseElement("showFlags") = "StyleUnix, DisplayAvailableBytes"

        serverManager.CommitChanges()
    End Sub

End Module

JavaScript

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

var sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST");
var siteDefaultsElement = sitesSection.ChildElements.Item("siteDefaults");
var ftpServerElement = siteDefaultsElement.ChildElements.Item("ftpServer");

var directoryBrowseElement = ftpServerElement.ChildElements.Item("directoryBrowse");
   directoryBrowseElement.Properties.Item("showFlags").Value = "StyleUnix, DisplayAvailableBytes";

adminManager.CommitChanges();

VBScript

Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST")
Set siteDefaultsElement = sitesSection.ChildElements.Item("siteDefaults")
Set ftpServerElement = siteDefaultsElement.ChildElements.Item("ftpServer")

Set directoryBrowseElement = ftpServerElement.ChildElements.Item("directoryBrowse")
   directoryBrowseElement.Properties.Item("showFlags").Value = "StyleUnix, DisplayAvailableBytes"

adminManager.CommitChanges()