如何从服务器位置使用 .NET Core 中的静态内容?
How to use static content in .NET Core from server location?
在我的 .NET Core 网络应用程序中,我想上传 PDF 文件并稍后显示它们。我想将这些文件存储在 Windows 2016 服务器上项目文件夹之外的文件夹中(例如 C:\files)。
起初我想,我可以在 IIS 服务器上使用指向 C:\files 的虚拟目录,但在 .NET Core 中似乎不再可能了。
根据此博客 post (https://www.jauernig-it.de/asp-net-coreiis-serving-content-from-a-file-share/ ),应该改用 UseFileServer()。是否可以使用项目外的文件夹配置 UseFileServer?
这是我试过的:
在我的Startup.cs
app.UseFileServer(new FileServerOptions
{
FileProvider = new
PhysicalFileProvider(@"\servername\C:\folder"),
RequestPath = new PathString("/Uploads"),
EnableDirectoryBrowsing = false
});
为了测试,我在文件夹中存储了一张图片,然后尝试:
<img src="/Uploads/image.jpg" />
很遗憾,图像未显示。
我错过了什么吗?
您的代码中的问题是,\servername\C:\folder
期望共享驱动器 C:
上有一个名为 folder
的目录,该目录位于名称为 [=13] 的远程服务器上=].
但在您的情况下,该文件夹与 IIS 在同一台计算机上。所以我只会 C:\folder
.
在我的 .NET Core 网络应用程序中,我想上传 PDF 文件并稍后显示它们。我想将这些文件存储在 Windows 2016 服务器上项目文件夹之外的文件夹中(例如 C:\files)。
起初我想,我可以在 IIS 服务器上使用指向 C:\files 的虚拟目录,但在 .NET Core 中似乎不再可能了。
根据此博客 post (https://www.jauernig-it.de/asp-net-coreiis-serving-content-from-a-file-share/ ),应该改用 UseFileServer()。是否可以使用项目外的文件夹配置 UseFileServer?
这是我试过的:
在我的Startup.cs
app.UseFileServer(new FileServerOptions
{
FileProvider = new
PhysicalFileProvider(@"\servername\C:\folder"),
RequestPath = new PathString("/Uploads"),
EnableDirectoryBrowsing = false
});
为了测试,我在文件夹中存储了一张图片,然后尝试:
<img src="/Uploads/image.jpg" />
很遗憾,图像未显示。 我错过了什么吗?
您的代码中的问题是,\servername\C:\folder
期望共享驱动器 C:
上有一个名为 folder
的目录,该目录位于名称为 [=13] 的远程服务器上=].
但在您的情况下,该文件夹与 IIS 在同一台计算机上。所以我只会 C:\folder
.