在 umbraco 下提供静态内容(通过 IIS)

Nic*_*ise 5 iis umbraco virtual-directory

我在根上有一个 Umbraco 站点。它工作正常。

我需要能够从 IIS 提供静态(不是 ASP.NET)内容,例如 /foo。(/foo 映射到与主应用程序不同的文件夹结构,例如:

www.example.com     -> d:\sites\example.com
www.example.com/foo -> d:\sites\static\foo
www.example.com/bar -> d:\sites\static\bar
Run Code Online (Sandbox Code Playgroud)
  • 我可以设置一个 IIS 应用程序,但随后我继承了父应用程序 web.config,由于这是静态内容,它不需要任何 dll 等(并且不应该有它们!)

  • 我可以设置一个 IIS 虚拟目录,并将各种位添加到 web.config 中以告诉 Umbraco 不要使用该文件夹(umbracoReservedUrls、umbracoReservedPaths)。这有效,但是它仍然作为主要的 ASP.NET 应用程序运行,我更喜欢它只是静态的(即,不允许 .NET 运行时)

两者都不是理想的,因为我们可能有其中一些,因此需要编写所有创建的脚本。编辑 4 个 web.config 文件(在 Web 集群中)并不理想。

我想要的是:

  • 创建一个指向正确位置的虚拟目录(或应用程序)。告诉 IIS 将其作为静态内容提供。如果我必须将 web.config 放入文件夹 (/foo) 中,告诉它根本不加载任何内容,那很好(然后我可以使用非 .NET 应用程序池)

我搜索的所有内容都带有“不,不能完成”。我错过了什么?

[编辑]

澄清一下,我不需要 CDN——我们有。我只想让 /foo 成为它自己的文件夹,其中包含一堆 html/css/images(例如 /foo/index.html、/foo/images/logo.png),这些文件提供给用户,但是不是通过 umbraco — 只是通过 IIS。

Nic*_*ise 0

我从来没有找到一个好的解决方案,所以我们最终只是将其放在一个单独的域中,并使用 UrlRewriting 将用户重定向到其他服务器。

并不完美,但确实有效。