angular部署到iis出现404解决方案
angular应用部署在iis上,刷新出现404
解决方案:
- 安装 iis
URL Rewrite
模块,并在 src 目录下增加web.config,配置urlrewrite如下:
<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”
],
Reference
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。