我们使用’ng build –prod’cli命令部署了angular 4应用程序,并在IIS 8.5上创建了’dist’文件夹,当我们运行应用程序时,它工作正常,但如果按下F5键则会出现404错误.
注意:请不要建议使用(useHash:true),如果建议我们如何从url中删除’#’.
如果有人可以建议我们,可以给予赞赏.
最佳答案 您可以像下面一样编写更改web.config文件
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="AngularJS Routes" stopProcessing="true">
<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="/" />
</rule>
</rules>
</rewrite>
<caching enabled="true" enableKernelCache="true">
<profiles>
<add extension=".js" policy="DisableCache" kernelCachePolicy="DisableCache" />
</profiles>
</caching>
</system.webServer>
</configuration>
让我解释一下这个配置
<match url=".*" />
这匹配即将到来的所有网址,而不是使用操作在您的基本路径中重定向
<action type="Rewrite" url="/" />
如果您在子文件夹中设置项目而不是更改url =“/ subfolder /”.