Angular2(Angular.io)AOT部署到IIS 8

Angular2(Angular.io)AOT部署到IIS 8,angular,iis-8,windows-server-2012,angular2-aot,Angular,Iis 8,Windows Server 2012,Angular2 Aot,我已经按照Angular.io Tour of Heros示例中概述的步骤对一个稍微简单的应用程序进行了建模 我还基于以下示例实现了AOT编译: 从Angular.io网站上直接下载的非常标准的东西 在我的开发机器上,应用程序的JIT版本与lite服务器一起运行良好。 在我的开发机器上,应用程序的AOT版本与lite服务器一起运行良好 是啊!!!世界是有道理的!好啊现在是将应用程序移动到my 2012/IIS 8开发服务器的时候了。当然,Angular.io网站上没有关于执行此特定任务的说明

我已经按照Angular.io Tour of Heros示例中概述的步骤对一个稍微简单的应用程序进行了建模

我还基于以下示例实现了AOT编译:

从Angular.io网站上直接下载的非常标准的东西

在我的开发机器上,应用程序的JIT版本与lite服务器一起运行良好。 在我的开发机器上,应用程序的AOT版本与lite服务器一起运行良好

是啊!!!世界是有道理的!好啊现在是将应用程序移动到my 2012/IIS 8开发服务器的时候了。当然,Angular.io网站上没有关于执行此特定任务的说明,因此我必须做出一些假设

  • 我所要做的就是将aot文件夹的内容(基于aot EXMPLE)复制到我的开发服务器上

  • 因为我不再使用lite服务器,所以我不需要复制bs-config.json文件

  • 该软件包已转换为js、css和html文件。IIS将知道如何处理所有事情(我希望,我在那里也看到一些地图扩展。我很害怕)

  • 没错。我将文件移动到我的开发服务器。它不起作用。我不确定这是否是由于aot在IIS上工作需要完成的某个步骤,是简单还是两者兼而有之。我遇到了可怕的“意外令牌”错误。当我单击错误链接时,它会将我带到index.html中引用build.js文件的位置

    我假设这与IIS有关,因为它在使用lite服务器的本地计算机上运行良好


    任何帮助或建议都将不胜感激。

    找到答案

    我认为问题源于应用程序位于web服务器上的虚拟目录中。它位于名为dashboard的虚拟目录中。所以我必须对index.html进行以下更改才能使其正常工作: 将
    更改为

    将文件引用
    更改为

    完整索引.html

    <!DOCTYPE html>
    <html>
      <head>
        <base href="/Dashboard">
        <title>My Dashboard</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel="stylesheet" href="Dashboard/styles.css">
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.5/css/bootstrap.min.css">
        <!-- Polyfill(s) for older browsers -->
        <script src="dashboard/shim.min.js"></script>
        <script src="Dashboard/zone.min.js"></script>
        <script>window.module='aot';</script>
      </head>
      <body>
        <my-app>Loading AppComponent content here ...</my-app>
      </body>
      <script src="Dashboard/dist/build.js"></script>
    </html>
    
    
    我的仪表盘
    window.module='aot';
    正在此处加载AppComponent内容。。。
    

    希望这能帮助其他可怜的迷失的灵魂。问题尚未结束,现在我将处理刷新/未找到问题。好消息是,关于这一点似乎有很多…

    所有内容都被捆绑到build.js中,因此跨应用程序或aot文件夹复制是多余的。实际上,您只需要index.html、build.js、shim.min.js、zone.min.js和css文件。在我看来,汇总可能有错误。您的build.js大小是否大于0?感谢您的回复:build.js为697KB。不确定它是否有用,但是,我可以使用lite服务器在本地机器上运行构建的应用程序。根据aot示例,生成过程不报告任何错误,只报告“'this'关键字”警告。