【问题标题】:Angular 2 create status page and access without hashAngular 2 创建状态页面并在没有哈希的情况下访问
【发布时间】:2018-05-23 08:34:28
【问题描述】:

我有一个 Angular 项目,其中路由与 HashLocationStrategy 完全兼容。

现在我必须创建一个需要在 URL 中不带“#”的情况下访问的健康状态页面。要求是我的全局负载均衡器能够简单地访问此页面,如果它返回 http 200,那么只有请求才会到来。

如果 DNS 类似于 abc.com,那么我需要类似 abc.com/status 而不是 abc.com/#/status

【问题讨论】:

  • 其实不是。我知道通过路径定位策略我们可以删除哈希。但这会在页面刷新时出现 404,并且需要对 Web 服务器进行一些调整来解决这个问题。我正在使用 PaaS,无法在 Web 服务器站点上执行任何操作
  • “柚木”将是mod_rewrite url 重定向。尝试在您的 PaaS 提供商的文档中查找它

标签: angular angular2-routing angular2-router


【解决方案1】:

这听起来不可能。一旦加载了 Angular 应用程序本身,您的服务器就已经返回了成功的 http 响应。否则 Angular 应用程序本身不会显示在浏览器中。

因此,您的全局负载均衡器将简单地查询该 Angular 页面并加载通常在浏览器中引导 Angular 应用程序的 HTML 源代码。每次都会发生这种情况,无论您的 Angular 应用在​​引导后会显示成功还是错误状态。

要通过 HTTP 状态代码报告“状态”,您必须使用服务器端检查和代码。也许使用您的 Angular 应用程序直接查询的 REST 端点。

来源:https://angular.io/guide/bootstrappinghttps://dev.opera.com/articles/http-basic-introduction/https://dev.opera.com/articles/http-response-codes/

【讨论】:

    猜你喜欢
    • 2017-07-16
    • 2013-11-06
    • 1970-01-01
    • 2016-07-27
    • 2018-07-03
    • 1970-01-01
    • 1970-01-01
    • 2016-07-02
    • 2019-09-17
    相关资源
    最近更新 更多