Apache Mod_Proxy - 一台服务器上的多个站点

时间:2013-11-02 07:00:00

标签: apache cross-domain reverse-proxy mod-proxy

我正在构建HTML5网站,其中严重依赖跨域REST API调用。为了解决与CORS相关的问题,我设置了反向代理以指向REST API。不幸的是我遇到了一些问题而且我遇到了困难,我对Apache配置并不熟悉。

在这里查看我的网站设置:Image of my infrastructure

基本上我的问题是:

  • ui.site.com/api1从api1.serv.com(预期)返回数据
  • ui.site.com/api2从 api1 .serv.com返回数据(这不正确,应来自 api2 .serv.com)
  • ui.site.com/api3从 api1 .serv.com返回数据(同样不正确,应该来自 api3 。 serv.com)

这里发生了什么?对于运行多个站点的一台服务器的代理调用,apache不能很好地运行吗?我似乎无法在此找到任何资源,或者任何有相同问题的人。

以下代码

服务器1 :JavaScript前端。

# Apache Virtual Host
ProxyPreserveHost On
SSLProxyEngine On

ProxyPass /api1 https://api1.serv.com
ProxyPassReverse /api1 https://api1.serv.com

ProxyPass /api2 https://api2.serv.com
ProxyPassReverse /api2 https://api2.serv.com

... #repeat above for  api3

服务器2: REST应用程序,每个应用程序都是自己的网站

<Virtualhost *:443>
    ServerName api1.serv.com
    ServerAlias api1.serv.com
    .... #other directives...
</VirtualHost>

<Virtualhost *:443>
    ServerName api2.serv.com
    ServerAlias api2.serv.com
    .... #other directives...
</VirtualHost>

.... #Repeat for api3.serv.com

0 个答案:

没有答案