Mac 上的 IIS 服务器可以看到目录结构,但看不到单个文件?

Mac 上的 IIS 服务器可以看到目录结构,但看不到单个文件?

我有一个类似弗兰肯斯坦的设置。我正在将客户相当老旧的技术基础设施(相当广泛,这是一项完全基于技术的业务)从传统 ASP 迁移到更现代的架构。

我正在尝试在本地复制他们当前的设置。最大的问题是,要运行 Classic ASP,我需要在 Windows 上运行 - 我在 M 系列(基于 ARM)Mac 上。我有一个运行良好的 Windows 11 虚拟机,并且 IIS 可以正常工作并提供文件,但问题是,当我尝试通过网络驱动器提供文件时(这就是我使用的技术将我的 Mac 硬盘驱动器代表到 Windows 的方式),我得到:

HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.

资源不可用

现在我可以看到网络驱动器上的文件,甚至可以毫无问题地访问它们。理论上 IIS 似乎可以看到它们。IIS 显示一个包含正确文件名的目录,但每当我单击一个目录时,就会出现上述 404 错误。那么它以某种方式能够将文件视为目录树,但不能为它们提供服务?原因尚不清楚。

目录列表顶部

如果有人知道为什么 IIS 可以看到目录结构中的文件,但无法提供任何文件,请告诉我。我想这是某种权限或文件路由问题。不幸的是,我并不是 IIS 专家。我的大部分 devops/sysadmin 类型的工作都是在 Linux 机器上进行的。

答案1

你不能。VM 层正在通过其本地管道安装“网络驱动器”,该管道在用户上下文中启动。当您是用户时,非常适合浏览文件,当您将用户上下文指向该驱动器时,非常适合浏览。

IIS 运行在内核模式 (http.sys) 下,其服务运行在系统上下文中。它们对您的用户空间驱动器一无所知,也永远不会知道。出于安全原因,IIS 永远不会从此类本地重定向驱动器执行任何可服务的内容。

解决方案:将文件复制到 [IIS] 本地目录。

我很遗憾,没有任何技巧可以解决这个问题(我从未听说过)。

相关内容