一台服务器上的多个Opa Web应用程序

时间:2011-12-18 03:08:42

标签: opa

我目前使用标准的Apache虚拟主机配置设置了多个网站。

我的问题是如何设置使用Opa构建的多个网站,以便它们像使用Apache虚拟主机一样运行。

离。当用户在www.example1.com中键入时,服务器会将用户重定向到OpaApp1或当用户在www.example2.com中键入时,服务器会将用户重定向到OpaApp2

2 个答案:

答案 0 :(得分:1)

您可以使用HttpRequest.get_host()恢复请求的主机。

示例应用:

OpaApp1 = {{
  start(uri) = Resource.html("Hello", <>World 1</>)
}}

OpaApp2 = {{
  start(uri) = Resource.html("Hello", <>World 2</>)
}}

@server
start(uri:Uri.relative) =
  match HttpRequest.get_host()
  {some={some="www.example1.com"}} -> OpaApp1.start(uri)
  {some={some="www.example2.com"}} -> OpaApp2.start(uri)
  _ -> Resource.error_page("Error", <>Bad gateway</>, {bad_gateway}) // default

server = Server.simple_dispatch(start)

答案 1 :(得分:0)

我不是Apache大师,但我想你可以为不同的端口配置不同的域,在这种情况下你可以在不同的端口上运行不同的Opa应用程序(--port switch)。这可能比仅拥有一个全球应用程序更具模块性。