【问题标题】:404 error after connecting to keycloak on angular App连接到 Angular App 上的 keycloak 后出现 404 错误
【发布时间】:2022-06-29 00:44:26
【问题描述】:

连接到 keycloak 后,我的 Angular 应用程序出现问题,这里是上下文: 我有一个与 keycloak(16.1)接口的前端应用程序(角度 13)。在我的本地环境下,不管有没有keycloal,都没有问题。

但是,在服务器(ngninx、docker)上部署时,在连接到 keycloak 后,我没有重定向到我的应用程序,而是出现 404 错误。 此外,我在刷新页面时遇到了第二个 404 错误。

我在网上找到了一些建议,例如:https://angular.io/guide/deployment#routed-apps-must-fallback-to-indexhtml 根据这些建议,我改变了我的路由策略,在我的 app.module.ts 中添加了一个提供者:

{ provide: LocationStrategy, useClass: HashLocationStrategy },

现在,我的 url 中有一个 #(例如:myapp/#/home),刷新页面时我没有 404 错误,但是连接到 keycloak 后我仍然遇到问题(见图):

我注意到重定向 url 中没有“#”,这是我的 keycloak 配置(我尝试在 url 中添加“#”,但似乎没有效果):

最后,我的应用路由示例:

{ path: '', redirectTo: '/home', pathMatch: 'full' }, { path: '**',组件:我的组件}

首先,在这个问题之前我不知道这个 HashLocationStrategy 并且从我读到的内容来看,它主要用于支持旧浏览器,这个策略是否仍然相关或者我应该恢复到 PathLocationStrategy 吗?

其次,我想在 keycloak 中修改重定向 URL 并没有看到任何效果后,我的重定向问题来自我的服务器 nginx,但我可能遗漏了一些东西。

最后我读到修改 nginx 配置可能是通过添加以下内容的解决方案: try_files $uri $uri/ /index.html;

但是我对此并不完全确定,单独修改 nginx 是否足以解决此问题?我错过了什么?

提前感谢您的帮助,

【问题讨论】:

    标签: angular nginx


    【解决方案1】:

    您好,亲爱的 Mohikran,我遇到了和您一样的问题。有没有找到解决办法?

    谢谢你

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-05-22
    • 2020-03-31
    • 1970-01-01
    • 1970-01-01
    • 2022-01-13
    • 2019-08-06
    • 2021-09-26
    • 1970-01-01
    相关资源
    最近更新 更多