我在IIS 8上托管了有角度的2+应用程序。所有路由都是客户端路由,除了一些以/mutual-funds/*开头的路由。对于那些路由,我想让IIS获取该文件夹并使用其索引page.I已经写了重写规则,但它不能重新加载。任何帮助都将不胜感激。
网络配置文件是:
<rule name="AngularJS Routes" stopProcessing="false">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="/webapp/" />
</rule>
<rule name="Check1" stopProcessing="false">
<match url="/mutual-funds/"/>
<conditions logicalGrouping="MatchAll">
<add input="{ REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="/webapp/mutual-funds/" />
</rule>
答案 0 :(得分:0)
如果有人有回复,我会感兴趣。
作为一种变通方法,您可以使用哈希位置策略添加{ useHash: true }
来提供路由器:
RouterModule.forRoot(routes, {useHash: true})
它会添加一个&#39;#&#39;在URL之后。然后,您可以使用网址http://your-context/#mutual-funds
这是一篇关于位置策略的文章:https://codecraft.tv/courses/angular/routing/routing-strategies/