如何将Umbraco 7.x网站实现为IIS 7.5中的虚拟目录?

时间:2017-01-12 06:39:31

标签: iis iis-7 umbraco umbraco7

我有一个使用 Umbraco 7.3 开发的网站,如果我在 IIS 7.5 下安装了一个网站,它的工作完美没有任何问题,当我开始问题时想用作虚拟目录

问题:

  1. 图片未在网站上加载(未找到404)
  2. .CSS 文件的错误404
  3. .JS 文件的错误404
  4. 我能够使用以下方法解决第二和第三个问题:

    • <ResolveUrlsFromTextString>true</ResolveUrlsFromTextString>下在Config文件夹的 umbracoSettings.config 文件中添加<content>
    • 我已经更新了所有的JS&amp;来自"/js/*" to "~/js/*""/css/*" to "~/css/*"的CSS路径。

    但图像的第一个问题仍然无法解决,任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:1)

经过大量搜索后,我终于可以使其工作没有任何问题,以下是我将Umbraco 7.x网站作为虚拟目录实施的步骤:

  1. 打开配置文件夹中的 umbracoSettings.config 文件,并在<ResolveUrlsFromTextString>true</ResolveUrlsFromTextString>标记之间插入此代码<content>
  2. 更新所有JS&amp;主要模板中的CSS路径,用作来自"/js/*" to "~/js/*"&amp;的主Templat "/css/*" to "~/css/*"还将runat="server"标识添加到标题中的<head>标记或标题中的每个.CSS链接,如下图所示:<link href="~/Css/main.css" rel="stylesheet" type="text/css" runat="server"/>,如图片所示:
  3. enter image description here

    1. 最后,这是修复图片链接或Media文件夹的最重要的一点,要执行此打开的SQL服务器并在Umbraco DB UPDATE cmsPropertyData set dataNvarchar = replace(dataNvarchar, '/media/','/replaceWithvirDirNameHer/media/') where dataNvarchar like '/media/%'中运行以下查询,不要忘记更改 replaceWithvirDirNameHer 与实际的虚拟目录名称。
    2. 重启IIS并重新发布整个网站,如图片所示:

      enter image description here

    3. 重要提示:

      某些链接可能无法反映更改,这是由于其路径已修复,因此我们还需要执行这些操作而不要忘记,如图像:

      enter image description here

      我希望这会有所帮助。

答案 1 :(得分:0)

您内容中的所有现有图片都将具有适合您的本地非虚拟目录路径的路径。但是如果你从虚拟目录中添加图像应该可以工作吗?

原因是我想这个路径是直接在HTML中设置的。这里可能有一个脚本来更新所有图像路径:https://our.umbraco.org/forum/umbraco-7/using-umbraco-7/59666-Umbraco-7-in-virtual-directory