-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 回答