apache2反向代理/端口转发问题

时间:2017-09-21 16:38:15

标签: apache ubuntu amazon-ec2

我有一个在4个端口上运行的(node / react / redux)webapp:后端服务器在4050上运行,3个客户端应用程序在3000,4000和5000上运行。(在AWS上运行,Ubuntu 16.04)< / p>

使用反向代理的NGINX端口转发效果很好。但是我的组织习惯了Apache,而我的SAML2 SSO系统使用Apache会更好。

我已经重定向工作,如

RewriteRule   "^/client1$" "http://my.aws.ip.addr:3000/" [R]
RewriteRule   "^/client2$" "http://my.aws.ip.addr:4000/" [R]
RewriteRule   "^/client3$" "http://my.aws.ip.addr:5000/" [R]

在我的/etc/apache2/apache2.conf中。我似乎无法获得任何其他建议。例如,VirtualHost声明。我更喜欢&#34;美学&#34;基于VirtualHost的代理,并希望了解为什么我不能从http://my.aws.ip.addr/client1等网址向前移植。

不起作用的VirtualHost示例:

<VirtualHost *:443>
  ...
  ServerName my.aws.ip.addr/client1
  ProxyRequests Off
  ProxyVia Off
  ProxyPreserveHost On
  <Proxy *>
     Order allow,deny
     Allow from all
  </Proxy>
  ProxyPass /client1/ http://my.aws.ip.addr:3000/
  ProxyPassReverse /client1/ http://my.aws.ip.addr:3000/
  ...
</VirtualHost>

(不在*:80工作)

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

尝试从ServerName中删除路径:

ServerName my.aws.ip.addr

此行应仅由域填充:它表示Apache应该触发此配置的域请求。

否则配置似乎没问题。