2017-07-13 7 views
0

当社では、プロジェクトファイル(.doc、.pdf、.step、.zip、...)をパブリックフォルダに保存しています。今度はプロジェクト管理のためにASP MVCで構築されたWebアプリを使い始めました。今度は、各プロジェクトをパブリックフォルダのフォルダに接続する必要があります。ここにいくつかの問題があります。 現代のブラウザーはすべてパブリックフォルダーをローカルリソースとして扱い、要求をブロックするため、フォルダーにリンクすることはできません。 次に、異なるユーザーによるファイルへの同時アクセスに問題があります。 サーバがユーザの.urlファイルにファイルへのパスを与えるというオプションがあるかもしれません。ASP上のパブリックフォルダからファイルを処理するMVC

これは通常どのように解決されますか? OneDriveはオプションではありません。おそらくSharePointにはそのような機能がありますか?ユーザーにファイルを提供できるソフトウェアはありますか?

+1

「ユーザーにファイルを提供する」を定義します。それらをダウンロードするだけですか?またはそれらを編集/アップロードできるようにしますか?他に何か? – mjwills

+0

MVCを使用している場合は、MIMEタイプとデータとともに 'File()'を返すことができます。それはブラウザでダウンロードを開始します。これは、ユーザーがあなたの実際のパスと1対1でない所定のルートにヒットするため、ディレクトリの難読化にも役立ちます。これにより、後でURLを失うことなく、アンダーラインデータストアをブロブストレージプロバイダに切り替えることができます。 – maccettura

+0

@mjwillsユーザーは、ファイルの編集や更新もできるはずです。それほど頻繁ではありませんが、そのオプションが必要です。 – gtu

答えて

1

IISでは、仮想ディレクトリをサイトに追加します。名前を付けてパブリックフォルダパスへのパスを設定します。次に、このフォルダのファイルが必要な場合は、代わりに仮想ディレクトリ名を使用します。たとえば、 "\\ foohost \ public \ foo"にマップする "foo"仮想ディレクトリを作成した場合、そのフォルダ内のリソースのURLはhttp://foo.com/foo/resource.docのようになります。

+0

DEVサーバーでこのオプションを試してみると、どうなるかわかります。 – gtu

+0

このアプローチは適切ではありません。サーバーはファイルへの直接アクセスを許可しません、私のアプリはWindows認証を持っていると思います。 – gtu

+0

アプリケーションプールが実行されているユーザ/サービスアカウントに必要な権限を与える必要があります。 –

関連する問題