基于 URL 的 Apache 反向代理

基于 URL 的 Apache 反向代理

我在端口 3000 上设置了 Metabase 应用程序服务器,并且需要使用 Apache 2(在 RHEL7 上)作为反向代理。

以下配置适用于根 URL '/'

<VirtualHost *:80>
  ProxyPreserveHost On
  ProxyRequests Off
  ServerName example.com.my
  ProxyPass / http://localhost:3000/
  ProxyPassReverse / http://localhost:3000/
</VirtualHost>

但我的目的是让它适用于“/metabase”。下面的配置不起作用。基本 HTML 似乎可以加载 ie 等,但我怀疑所有 JS 和 CSS 静态文件都不起作用,因为页面是空白的。

# NOT WORKING
<VirtualHost *:80>
  ProxyPreserveHost On
  ProxyRequests Off
  ServerName example.com.my
  ProxyPass /metabase http://localhost:3000/
  ProxyPassReverse /metabase http://localhost:3000/
</VirtualHost>

我在配置中缺少什么?

答案1

您可能没有在配置中遗漏任何内容,正如您所说的,基本 HTML 似乎已加载。

HTML 可能应该位于根目录而不是某个子目录中。查看为图像、CSS 和 JS 生成的链接。

相关内容