使用asp.net页面从另一台服务器访问文件

时间:2012-10-10 05:37:19

标签: c# asp.net

在我的ASP.NET应用程序中,我必须显示一些图像。实际上这些图像保存在一些其他服务器中。在我的数据库中,我有文件路径。我需要从远程服务器访问文件到我的应用程序。我怎样才能做到这一点?我使用以下代码

imgFiles = Directory.GetFiles(strFullPath, 
                              strPkStock + "_*", 
                              SearchOption.TopDirectoryOnly);

但是这会引发错误,说“访问路径被拒绝”

2 个答案:

答案 0 :(得分:6)

您必须在其他服务器上进行文件系统访问才能执行此操作,我相信您不会拥有它。

完成它的最短路径是,从其他服务器发布images文件夹并使用图像的URL访问它而不是文件系统路径。这样,您的asp.net应用程序将能够轻松访问这些图像。事实上,客户端浏览器将直接从其他服务器访问这些图像,您只需更改图像的src。

答案 1 :(得分:2)

Murtuza Kabul建议通过HTTP / HTTPS访问文件可能是最简单的方法。您可以将HTTPS与客户端ceritficates一起使用,以防止其他用户/计算机从同一HTTPS服务器读取文件。

如果要直接在其他服务器的共享文件夹上访问文件,则需要确保访问文件的代码在帐户下运行,该代码至少具有该共享文件夹的读取权限。

请注意,默认配置(代码在特殊匿名帐户或调用用户凭据下运行)帐户下运行的代码将不具有其他服务器的权限(匿名,因为它是本地帐户,用户因为委托限制也称为“ NTLM一跳地狱“)。

您最简单的选择是在某个帐户下运行应用程序民意调查,该帐户具有其他服务器的权限,并取消模拟当前用户处理帐户。您还可以使用某些帐户来访问远程文件。

相关问题