angular - 在 aws s3 上部署时重新加载 Angular 项目时出现 404 错误
问题描述
我有一个部署 aws s3 的 Angular 项目
我使用ng build --prod
我复制了s3存储桶中的dist文件夹文件..
该页面第一次顺利加载,但是当我重新加载它时..它向我显示了这个错误
GET https://fellowgenius.com/facade 404
我该如何解决这个问题?
这是我的索引 html 页面:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>FellowGenius</title>
<base href="./" />
<script>
var global = global || window;
var Buffer = Buffer || [];
var process = process || {
env: { DEBUG: undefined },
version: [],
};
</script>
<link rel="icon" type="image/x-icon" href="favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
</head>
<body class="mat-typography">
<app-root></app-root>
</body>
</html>
解决方案
默认情况下,HTML5 历史记录用于在 Angular2 中重用。
要修复 404 错误,您需要更新服务器以为您定义的每个路由路径提供 index.html 文件。
如果要切换到 HashBang 方式,需要使用这个配置:
import {bootstrap} from 'angular2/platform/browser';
import {provide} from 'angular2/core';
import {ROUTER_PROVIDERS} from 'angular2/router';
import {LocationStrategy, HashLocationStrategy} from '@angular/common';
import {MyApp} from './myapp';
bootstrap(MyApp, [
ROUTER_PROVIDERS,
{provide: LocationStrategy, useClass: HashLocationStrategy}
]);
推荐阅读
- typescript - 如何修复我的 Stripe redirectToCheckout 集成错误?
- python - 使用 ROS 从相机中提取多帧
- docker - 在 docker 中运行时如何禁用 NGINX 日志记录
- mongodb - MongoDB 架构组织
- php - 如何获取当前帖子分类的术语名称?
- javascript - Google Recaptcha V2 Invisible - 加载时间大幅增加 - 破坏页面速度优化
- python - 我们可以通过指定纬度和经度从 flickr 下载特定地理位置的照片吗?
- dhall - Dhall - 表达式与注释不匹配,键入预期文本
- after-effects - After Effects 表达式:一个图层的表达式功能在引用另一图层时中断
- azure - Azure Kubernetes LB 注释