拒绝访问文件以进行下载

时间:2017-10-05 16:45:47

标签: asp.net iis download access

我发布了一个网站,其中包含一个名为"内容"的根文件夹。并包含带有图像和KML文件的其他文件夹。这些文件是从应用程序在服务器上创建的。文件上传图像并为KML文件生成。

我可以通过使用路径my.web.sit/Content/Images/image.jpg获取图片来下载图片,但我无法访问KML文件。错误消息为File or directory not found.,如果我只使用文件夹(无文件名)编写URL,则错误为Forbidden: Access is denied.。 我试图添加"位置"在我的根web.config中标记,但没有变化。

任何想法,所以我可以下载这些KML文件?

2 个答案:

答案 0 :(得分:0)

尝试将此添加到您的web.config

<system.web>
    <httpHandlers>
        <add verb="*" path="*.kml" type="System.Web.StaticFileHandler" />
    </httpHandlers>
</system.web>
  

System.Web.StaticFileHandler 是另一种处理指定文件访问的内部类型。如果出现访问问题,则会产生以下错误之一:HTTP 401错误&#34;未授权&#34 ;; HTTP 403错误&#34;禁止访问:访问被拒绝&#34 ;;或HTTP 404错误&#34;找不到文件或目录&#34;。

您可以看到更多here

答案 1 :(得分:0)

终于找到了解决方案。不需要特别授权,但添加MIME类型。

&#13;
&#13;
<system.webServer>
  <staticContent>
    <mimeMap fileExtension=".kml" mimeType="text/plain" />
  </staticContent>
</system.webServer>
&#13;
&#13;
&#13;

希望这可以帮助别人!