【问题标题】:save file to virtual directory将文件保存到虚拟目录
【发布时间】:2011-07-19 03:36:28
【问题描述】:

您好,我不确定如何执行此操作,我正在使用共享主机。我在http://www.example.com/images 有一个虚拟目录。该目录实际上是服务器 assets/images 上的一个文件夹,而我的站点位于 /httpdocs(httpdocs 和 assets 文件夹处于同一级别)。

如何将文件保存到此文件夹,然后使用例如 /images/foo.jpg 进行访问?

httpdocs/
--web.config
--default.aspx
--等

资产/
--图片/
----foo.jpg

【问题讨论】:

    标签: c# .net virtual-directory


    【解决方案1】:

    您可以正常保存文件(使用FileStreams 或其他东西)。
    调用Server.MapPath("~/httpdocs")获取磁盘路径。

    【讨论】:

    • 所以要保存到网站目录之外的 assets/images 目录,它会是 Server.MapPath("~/assest/images/") 吗?
    • @raklos: 网站目录外面怎么样?
    • httpdocs 和 assets 处于同一级别。因此资产文件夹位于网站之外。查看已编辑的问题
    • 如果虚拟是在 httpdocs 中为“images”创建的(我在这里假设虚拟路径是 /httpdocs/images),则默认路径是 Server.MapPath("~/images") .aspx。虚拟本身将在 IIS 中设置,路径为 .../assets/images。
    • 如果虚拟目录存在于另一台服务器上怎么办?
    【解决方案2】:

    最简单的方法是在 IIS 管理器中创建一个虚拟目录,以便 /images 实际上指向 assets\images(你说你上面已经有一个虚拟目录,所以这可能已经完成了)。要将内容保存在那里,您可以使用 SLaks 提到的 Server.MapPath("~/images") 。 Server.MapPath 为您提供物理位置,您可以按照正常保存文件的方式将其保存到该位置。

    具体保存方式取决于用户上传的方式。您是否使用有人选择文件然后在网页上提交的表单?如果你是,this link 将帮助你节省部分。

    祝你好运。 :)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-03
      • 2015-03-29
      • 1970-01-01
      • 1970-01-01
      • 2011-12-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多