質問: iisでのftpサーバの構築について はじめまして、こんにちは。 非常に困っているので教えてください。 win 2000 serverでiisを動かしてftpサーバをたちあげたのですが、「既定のftpサイト」の中で「仮想ディレクトリ」を3つ作成しました。 1つはエイリアス名「test」でパスは「c:\\test」 2つ目はエイリアス名「ftproot」でパスは「c:\\inetpub\ftproot」 3つはエイリアス名「test2」で「d:\\test2」 です。 クライアントからはffftpで接続し、ホストの初期フォルダを「/www/test」、「/www/ftproot」、「/www/test2」、「空白」のどれで接続してもなぜか、「c:\\inetpub\ftproot」にしか接続できません。 なぜなのでしょうか。 また共有設定で「読み込み」「書き込み」設定をしているのに、なぜか読み込みしかできません。 分かる方がいれば教えてください。 よろしくお願いします。
回答: まず、ホストの初期フォルダパスですが 「/www/test」「/www/ftproot」「/www/test2」 ではなく、 「/test」「/ftproot」「/test2」 ではないでしょうか。 存在しないフォルダを指定しているので「既定のftpサイト(=c:\inetpub\ftproot)」が 表示されているのだと思われます。 (2番目仮想ディレクトリ「ftproot」が表示されているわけではない。) あなたの指しているパスの通りだとすると、「既定のftpサイト」の下の 「www」というディレクトリ、もしくは仮想ディレクトリの下に上記3つの 仮想ディレクトリを作成していなければなりません。 次に書くことはやらなくてもいいですが、上記の内容に関連したテクニックで、 仮想ディレクトリを作成したルートサイトの物理フォルダに、作成した仮想ディレクトリの エイリアス名と同じ名前の空フォルダを作ってやるとftpクライアントから ルートサイトにアクセスした際にフォルダが表示され、そのフォルダをクリック することにより仮想ディレクトリにアクセスできるようになります。 今回の場合、既定のftpサイトの物理フォルダである「c:\inetpub\ftproot」の 直下に「test」「ftproot」「test2」というフォルダを作成してやればいいだけです。 そうすればftpクライアント側で初期フォルダを指定せずともルートから辿っていけます。 話がそれましたが、アクセス権の問題ですが、ftpサーバでアクセスする際の アクセス権を設定するのは「共有」の「アクセス許可」ではありません。 基本的に設定個所は2箇で、1点目がiisの設定でインターネットインフォメーション サービスマネージャを開いて 「既定のftpサイト」のプロパティを開いた「ホームディレクトリ」タブにある 「読み取り」「書き込み」「ログアクセス」のチェックボックスです。 既定で「読み取り」「ログアクセス」にのみチェックが入っていて、「書き込み」は チェックが外れていると思うのでファイルをアップロードしたい場合などは「書き込み」 にもチェックを入れます。 この設定はディレクトリや仮想ディレクトリ単位でも行えます。 2点目は通常のアクセス権の設定でエクスプローラから対象のフォルダのプロパティを 開いた「セキュリティ」タブから設定します。 ここでftpクライアントで接続する際のユーザーを追加してやりそれぞれアクセス権を与えてやります。 ちなみに先に「c:\inetpub\ftproot」以下に仮想ディレクトリのエイリアスと同名の空フォルダを作成するというテクニックを 紹介しましたが、それを行っている場合は、そのフォルダに対しても ftpで接続するユーザーの読み取り権限を与えておく必要があります。