-4

ソーシャル ネットワーキング サイトを作成しており、ユーザーが動画や写真をアップロードして共有できるようにしたいと考えています。アップロードされたファイルは個人用ディレクトリに保存され、ユーザーとその友人だけがアクセスできます。

アクセスを制限するために、アップロードごとに web.config ファイルを作成することを検討していました。これまでのところ、web.config ファイルをコードで作成および更新する方法は見つかりませんでした (たとえば、ユーザーが友達リクエストを受け入れると、新しい友達を web.config ファイルに追加する必要があります)。

コードで web.config ファイルを作成する方法について誰か提案がありますか?

4

1 に答える 1

3

おそらく、ユーザーがアップロードしたコンテンツをこのように処理したくないでしょう。いくつかの理由があります:

  1. アプリケーション ディレクトリに物理的に保存されているコンテンツをユーザーがアップロードできるようにすると、重大なセキュリティ リスクにさらされる可能性があります。
  2. Web.config を更新するたびに、アプリケーション プールがリサイクルされ、アプリケーションが使用できなくなります。
  3. ソーシャル ネットワークの規模が拡大するにつれて、負荷を複数のサーバーに分散する必要が生じます。その時点で、データをローカル サーバーに保存するのではなく、ある種の集中型または分散型のキャッシュは機能しなくなります。

ユーザーがコンテンツをアップロードし、そのコンテンツをある種の BLOB ストレージ メカニズムに保存する機能を提供することをお勧めします (データベース、クラウド サービス プロバイダーはすべてこれらを備えています)。そこから、特定の URL が要求されたときにアプリケーション コードを介してデータを送り返すことができます。または、BLOB ストレージ プロバイダーがアクセス制御をサポートしている場合は、BLOB ストレージからの直接ダウンロードを可能にするキーを生成できます。これの良いところは、多くの場合、スイッチをフリックして、人気のあるコンテンツの CDN を有効にできることです。

あなたのソーシャルネットワークで頑張ってください!

于 2012-06-02T00:59:53.970 に答える