部署到 Istio(使用 Kubernetes)的 Jhipster 无法正确加载

2023-12-15

我正在将 Jhipster 应用程序部署到 Kubernetes 环境,并使用 Istio 进行网络连接。

下面是我的虚拟服务。请注意,当prefix被设定为/,一切正常。但是,我有几个应用程序在此集群上运行,因此我需要将其映射到/mywebsite.

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
 name: ingress
spec:
 hosts:
 - "*"
 gateways:
 - mywebsite-gateway
 http:
 - match:
   - uri:
       prefix: /mywebsite
   route:
   - destination:
       host: mywebsite
       port:
         number: 80
   websocketUpgrade: true

当我访问该应用程序时,我收到以下一组错误:

mywebsite:3 GET http://mywebsite.com:31380/app/vendor.bundle.js net::ERR_ABORTED 404 (Not Found)

manifest.bundle.js:55 Uncaught TypeError: Cannot read property 'call' of undefined
    at __webpack_require__ (manifest.bundle.js:55)
    at eval (app.main.ts?3881:1)
    at Object../src/main/webapp/app/app.main.ts (main.bundle.js:447)
    at __webpack_require__ (manifest.bundle.js:55)
    at webpackJsonpCallback (manifest.bundle.js:26)
    at main.bundle.js:1
__webpack_require__ @ manifest.bundle.js:55
eval @ app.main.ts?3881:1
./src/main/webapp/app/app.main.ts @ main.bundle.js:447
__webpack_require__ @ manifest.bundle.js:55
webpackJsonpCallback @ manifest.bundle.js:26
(anonymous) @ main.bundle.js:1

manifest.bundle.js:55 Uncaught TypeError: Cannot read property 'call' of undefined
    at __webpack_require__ (manifest.bundle.js:55)
    at eval (global.css?ca77:1)
    at Object../node_modules/css-loader/index.js!./src/main/webapp/content/css/global.css (global.bundle.js:6)
    at __webpack_require__ (manifest.bundle.js:55)
    at eval (global.css?0a39:4)
    at Object../src/main/webapp/content/css/global.css (global.bundle.js:13)
    at __webpack_require__ (manifest.bundle.js:55)
    at webpackJsonpCallback (manifest.bundle.js:26)
    at global.bundle.js:1
__webpack_require__ @ manifest.bundle.js:55
eval @ global.css?ca77:1
./node_modules/css-loader/index.js!./src/main/webapp/content/css/global.css @ global.bundle.js:6
__webpack_require__ @ manifest.bundle.js:55
eval @ global.css?0a39:4
./src/main/webapp/content/css/global.css @ global.bundle.js:13
__webpack_require__ @ manifest.bundle.js:55
webpackJsonpCallback @ manifest.bundle.js:26
(anonymous) @ global.bundle.js:1

mywebsite:1 Unchecked runtime.lastError: The message port closed before a response was received.

我不知道为什么它要尝试去/app/vendor.bundle.js。我认为应该去/mywebsite/app/vendor.bundle.js。虽然当我手动转到此页面时,我得到了Your request cannot be processed

也在我的index.html, 我有<base href="./" />,它一直存在,因为我将其视为可能的解决方案。


正如您在评论中提到的

我在 webpack ... 和 index.html 中设置了 new HtmlWebpackPlugin({ baseUrl: '/myapp/' }) 。我收到一些新错误(即找不到 favicon),但该网站仍然无法加载,因为似乎找不到 javascript 或其他东西 – Mike K

这就是它应该如何工作的。它不会加载 javascript,可能还加载 css/img,因为您没有为此显示 istio uri。

所以这里的解决方案是

  • 新建baseUrl和basehref,例如/myapp
  • 使用 /myapp 前缀或任何前缀创建虚拟服务并重写 /myapp
  • 为您的 javascript/css/img 文件夹路径创建额外的 uri

看看这个example

让我们分解一下应该路由到前端的请求:

精确路径/ 应路由到前端以获取 Index.html

前缀路径/static/* 应路由到前端以获取前端所需的任何静态文件,例如层叠样式表 and JavaScript 文件.

与正则表达式 ^.*.(ico|png|jpg)$ 匹配的路径应该路由到前端,因为它是页面需要显示的图像。

http:
  - match:
    - uri:
        exact: /
    - uri:
        exact: /callback
    - uri:
        prefix: /static
    - uri:
        regex: '^.*\.(ico|png|jpg)$'
    route:
    - destination:
        host: frontend             
        port:
          number: 80
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

部署到 Istio(使用 Kubernetes)的 Jhipster 无法正确加载 的相关文章

随机推荐

  • 在 WPF 中的两个窗口之间共享同一对象

    我有代表我的班级AppSettings I have Main窗户和Settings window 每个窗口都包含对象的实例AppSettings 所以这是两个不同的对象 如果反对AppSettings in Settings窗口发生更改
  • 默认 .equals 和 .hashCode 如何适用于我的类?

    说我有自己的班级 public class MyObj 它有一些属性和方法 它没有实现 equals 也没有实现 hashCode 一旦我们调用 equals 和 hashCode 默认实现是什么 来自对象类 它们是什么 默认等于如何工作
  • false/true 对于 IPreInsertEventListener 到底意味着什么?

    我最近发现了如何使用IPreDeleteEventListener IPreInsertEventListener and IPreUpdateEventListener in the NHibernate Event命名空间 然而 我仍然
  • 是否可以通过 JMX 使 JBoss 中的单个会话失效?

    我们正在追踪应用程序中的一些内存问题 并且我们可以了解问题所在的会话的大小 它只会影响某些会话 它们似乎会失去控制 我们希望能够或多或少地 手动 使这些会话无效 以回收该内存 有没有办法通过 JMX 来做到这一点 我们使用的是 JBoss
  • psycopg2:用一个查询插入多行

    我需要用一个查询插入多行 行数不是恒定的 所以我需要执行如下查询 INSERT INTO t a b VALUES 1 2 3 4 5 6 我知道的唯一方法是 args 1 2 3 4 5 6 args str join cursor mo
  • 在 Kivy for Python 中按下按钮时更新标签的文本

    这是我的代码 我想制作一个游戏 当您按下按钮时 main label 会更改文本 但我已经到处找了一个星期 但仍然不明白如何做到这一点 我看了Kivy的网站 但我不明白 正如你所看到的 我是 kivy 的新手 经验也不是很多 from ki
  • 为什么 ng-click 在我的指令中不起作用以及如何添加切换类?

    我在 Angular 中创建了一个指令 如下所示 angular module msfApp directive listitem function return templateUrl assets templates directive
  • 突然导入错误

    所以我在 Ubuntu 上设置了一个 virtualenv 安装了所有东西 并让开发站点运行runserver 我自己的所有单元测试都通过了 但是许多 Django 包的单元测试没有通过 所以我尝试做git bisect为了弄清楚这一点 请
  • 使用插件cached_network_image在Flutter中缓存持续时间?

    我正在使用 flutter 插件cached network image 并且想知道缓存文件的缓存持续时间是多长 另外是否有办法将缓存持续时间修改为 x 天 我还想知道的是 文件是否以原始文件格式缓存或是否进行转换 例如 HEIC gt J
  • 如何在Snow Leopard上安装lightblue(蓝牙)模块?

    我正在尝试安装蓝牙模块浅蓝色 我的系统 Mac OS X Snow Leopard 10 6 8 Python 2 7 gcc 4 2 4 0 xcode v 3 2 3 我检查过 我还在系统中的 Library Python 下直接找到了
  • 应用内计费问题

    我正在尝试在应用程序购买中实施 但几天来一直遇到问题 当用户尝试购买时 它是成功的 但应用程序给出了一个奇怪的错误 该错误显然可以追溯到操作系统构建蜂窝 该错误阻止用户收到购买 直到他们再次单击购买按钮 Steps 进行购买 购买成功 没有
  • Javascript文件上传[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 JavaScript 中有
  • getApplicationContext() 使用时抛出异常

    我已经根据现有 Android 项目中的另一个类指定了一个类 addRow 方法应该动态地将行添加到表中 当创建一个新的 TextView 添加到我的行以及创建该行时 我应该指定 上下文 当前的方式 尝试 getApplicationCon
  • 在迭代列表时修改列表 - 为什么不呢? [复制]

    这个问题在这里已经有答案了 几乎每个关于这个主题的教程和答案都坚持认为 在迭代列表时永远不应该修改列表 但如果代码有效 我不明白为什么这是一件坏事 例如 while len mylist gt 0 print mylist pop 我错过了
  • 写入 CSV 时,从 csv 值中删除“”并更改列名称

    我正在尝试从 R 表创建 csv 文件 但我无法理解为什么所有的值都会得到 当我使用 write csv 函数时用 检查 我的数据如下所示 Sample Sample Name Sample Group Pool ID Sample Pla
  • php中如何正确计算?

    total 30 nr1 13 nr2 6 nr3 3 我知道我们在学校学过 但是什么是第一个 或 或 或 括号在哪里或者我什至需要它们吗 您将括号放在应该计算的优先级上first 在数学中 它从除法 乘法 减法开始 最后是加法 因此 以下
  • 需要在设备有 WiFi/数据连接时运行服务

    上次 我使用以下代码来运行后台服务 Intent intent new Intent InitActivity this GetService class PendingIntent pintent PendingIntent getSer
  • 如何在 Windows XP 上安装 GDI+ 1.1 版?

    有人成功做到这一点吗 据我了解 GDI 1 1 仅随 Vista 一起提供 我正在尝试接触不同的效果类 我正在使用 C VS2008 VC9 根据 Windows Vista 的 EULA GDI 1 1 不可重新分发
  • 删除加法逆元对

    这个问题是基于我之前在 SO 上提出的两个问题 每个问题都比前一个更复杂 在上一篇文章中 如何识别 R 中行的镜像重复项 我想识别数据框中行的 部分 匹配 具体来说 如果数据帧中的特定行基于列子集之间的匹配在数据帧中的其他位置具有重复行 我
  • 部署到 Istio(使用 Kubernetes)的 Jhipster 无法正确加载

    我正在将 Jhipster 应用程序部署到 Kubernetes 环境 并使用 Istio 进行网络连接 下面是我的虚拟服务 请注意 当prefix被设定为 一切正常 但是 我有几个应用程序在此集群上运行 因此我需要将其映射到 mywebs