angular应用部署在iis上时,刷新出现404
解决方案:
安装 iis URL Rewrite
模块,配置urlrewrite如下:
在 src 目录下增加web.config,内容如下:
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Angular 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>
</system.webServer>
</configuration>
配置 web.config 自动打包
修改 angular-cli.json
文件(angular2-5)
"apps": [
{
"root": “src”,
"ourDir": “dist”,
"assets": [
“assets”,
“favicon.ico”,
“web.config”
],
修改 angular.json
文件(angular6)
“build”: {
"options”: {
. . .
"assets": [
“src/assets”,
“src/favicon.ico”,
“src/web.config”
],
网友评论