【问题标题】:Server path of VHD driveVHD 驱动器的服务器路径
【发布时间】:2012-04-05 07:24:56
【问题描述】:

我想获取 VHD 驱动器的服务器路径。我正在开发 azure web 应用程序。我上传了一些文件并将其保存到 Test.VHD 驱动器中(比如说)。这是一些 blob 容器“驱动器”(例如)内的云驱动器。我通过以下方式安装和映射它:

driveLetter = drive.Mount(localCache.MaximumSizeInMegabytes - 20, DriveMountOptions.Force);

“driveLetter”是“A:\”(比如说)。现在我将所有 pdf 文件名显示为页面上的链接按钮。单击这些文件时,我想使用 javascript 函数在浏览器中打开该 pdf 文件

window.open(pdfPath, pdfName, 'scrollbars=yes, resizable=yes');

我的问题是我必须将什么作为“pdfPath”参数传递?

我有路径“A:\Uploads\pdfName.pdf”。但我不能通过它。我必须像http://servername:port/path 一样传递它,以便用户可以查看它。

但我不知道如何将其转换为http://servername:port/path 之类的链接。通过这样做,我可以在浏览器中查看 pdf。

请帮帮我,

提前致谢。

【问题讨论】:

    标签: c# azure-storage


    【解决方案1】:

    我意识到这并不能直接回答您的问题,但是...我认为您会看到通过写入 Azure Drives 所做的一些限制:

    • 在任何给定时间,只有一个角色实例可以对 vhd 进行写访问。这意味着您的解决方案可以扩展到一个实例之外,除非您每个实例都有一个唯一的 vhd(或者每个 add'l 实例只是创建一个只读快照)
    • 您现在必须通过角色实例来访问单个文件,因为您无法提供指向外部世界的 vhd 内文件的直接链接
    • 要管理任何文件,您必须安装一个 Azure 驱动器。这意味着您无法从 Windows Azure 之外的代码管理任何文件(Azure 驱动器只能由 Windows Azure 角色实例安装)

    我建议将单个文件写入单个 blob。与在您的场景中使用 Azure 驱动器相比,这有几个优势:

    • 任何实例都可以读取/写入每个单独的文件(每个文件位于单独的 blob 中)
    • 您可以选择在网页中嵌入直接文件 url。这提供了对 blob 的直接访问,而无需通过您的角色实例之一(反过来,由于不需要 IIS,这会减轻所述实例的负载)
    • 您可以选择将单个 blob 设为私有,并且仍然通过共享访问签名为私有 blob 提供 URL
    • 您可以远程管理单个 Blob,并且有几个第三方工具可以帮助您做到这一点。
    • 如果您愿意,您可以为您的存储启用 CDN(边缘缓存),这样您就可以将您的 URL 指向 CDN 链接,而不是直接指向源 blob。这仅限于面向公众的 Blob。

    【讨论】:

    • 感谢您的建议!!我按照你的建议做了。我离开了 VHD 的解决方案并开始使用带有 blob 容器的 blob。感谢大家的帮助!!
    【解决方案2】:

    那里有一个小混乱。

    从技术上讲,Azure 驱动器是存储在 Azure Blob 存储中的 Blob,因此它有一个 URL。相比之下,无法使用 URL 直接访问 Azure 驱动器的内容。如果要公开 Azure 驱动器中包含的文件,则必须使它们可以从 Windows Azure 实例访问。

    您可以通过在装载驱动器时将 Azure 驱动器映射为 IIS 中的虚拟文件夹来实现此目的。如果您在 .Net 中编码,请查看 System.Web.Administration(您必须将其包含在您的项目中,它是 IIS 的一部分,而不是直接包含在 CLR 中)。如果您使用其他语言编写代码,最简单的方法是调用 appcmd.exe 来定义虚拟文件夹。

    皮埃尔

    【讨论】:

    • 它是可访问的。我的 Test.VHD 是我的 blob。我已将其安装为“A:\”。 A:里面有一些 pdf,所以我应该如何使用本地以及 azure 服务器上的一些链接访问这个 pdf。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-13
    • 2011-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-11
    相关资源
    最近更新 更多