Dan*_*ead 2 amazon-s3 amazon-cloudfront amazon-route53 angular
我有一个网站托管在用 Angular 4 编写的 S3 存储桶上。
我在 Route 53 上有一个指向 CloudFront 分配的 URL,该分配指向 S3 存储桶的 index.html(设置为无缓存)。
在 S3 存储桶中,我有每个版本示例的文件夹:
mywebsite.com
-> v1.0.0
-> pricing.html
-> index.html
Run Code Online (Sandbox Code Playgroud)
在我的index.html 中我有
<base href="/v1.0.0/">
这非常完美,可以转到正确的页面,并且始终获得网站的最新版本,因为 index.html 没有被缓存。
然而,这使我的网址看起来像:
https://www.mywebsite.com/v1.0.0/pricing
如何隐藏 URL 中的“/v1.0.0/”?
好吧,经过几个小时的尝试,我终于明白了。以下是我为其他尝试这样做的人所做的事情:
进入你的app.module.ts文件并添加
import { APP_BASE_HREF } from '@angular/common';
Run Code Online (Sandbox Code Playgroud)
接下来,在“提供者”部分添加
providers: [
[{provide: APP_BASE_HREF, useValue: '/'}]
],
Run Code Online (Sandbox Code Playgroud)
然后,当您上传网站时,编辑index.html以获取版本文件夹的base_href:
<base href="/v1.0.9/">
Run Code Online (Sandbox Code Playgroud)
现在它将从 /v1.0.9/ 文件夹中提取所有文件,但不会在 URL 中显示该文件!
| 归档时间: |
|
| 查看次数: |
1046 次 |
| 最近记录: |