【问题标题】:Treat application as root context IIS将应用程序视为根上下文 IIS
【发布时间】:2015-07-30 18:42:04
【问题描述】:

我刚刚将我的 Umbraco 站点从我的开发环境迁移到了一个我们可以完全控制的云托管 IIS 解决方案。该解决方案托管多个站点,我只是将我的 Umbraco 文件夹和代码添加到 wwwroot 文件夹并将其创建为一个新应用程序。我遇到的问题是大多数 Umbraco 代码似乎都指向 IIS 服务器的根目录,那么我该如何制作它,以便只有这个应用程序才能看到它包含文件夹作为根目录?

例如,在我的代码中,Umbraco 将一些文件路径呈现为:

/media/1028/myimage.png

这意味着它指向:

www.myiisserver.com/media/1028/myimage.png

而它应该看:

 www.myiisserver.com/mynewumbracosite/media/1028/myimage.png

我是 IIS 新手,因为我通常使用 Apache 服务器,但必须有某种方法来设置应用程序的根目录,以便它始终在任何 url 中包含应用程序目录。

任何帮助将不胜感激。

【问题讨论】:

  • 尝试在 Umbraco 的根节点上设置主机名(例如 www.myiisserver.com/mynewumbracosite/)?

标签: .net iis umbraco


【解决方案1】:

首先要检查一件事。您在本地开发时是否将媒体上传到 Umbraco 站点(可能不在虚拟目录中)?如果是这样,则媒体已使用该路径而不是虚拟目录保存。要对此进行测试,请将新媒体项添加到媒体部分,并查看路径中是否包含虚拟文件夹。如果是这样,您可以使用这个方便的脚本修复旧媒体项目的路径:http://shazwazza.com/post/sql-script-for-changing-media-paths-or-virtual-directories-in-umbraco/

如果不是,请检查站点是否配置正确,在 IIS 中,站点所在的文件夹应配置为虚拟目录。接下来,在 umbracoSettings.config 文件中,确保将 ResolveUrlsFromTextString 设置为 true,详见此处:https://our.umbraco.org/documentation/using-umbraco/config-files/umbracoSettings/

【讨论】:

  • 我的 umbracoSettings.config 文件中没有这样的属性。此外,不只是媒体无法正常工作,我什至无法访问 Umbraco 后台。我去登录,然后出现一个白屏。我相信是因为它是从根目录而不是目录上下文中寻找必要的文件
  • 您必须将属性添加到设置文件中,默认情况下不包含它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-12
  • 2021-03-03
  • 1970-01-01
  • 2016-02-21
  • 1970-01-01
相关资源
最近更新 更多