我在试着得到这出戏!服务器侦听单个域名,而不是为此服务器配置的所有域名。
例如,我在两个不同的域名上运行了两个web服务:example1.comexample2.com
示例1运行在端口9000上,示例2运行在端口9001上。相应域的端口80被转发到所述端口。
但是示例2仍然可以通过example1.com:9001访问,我想知道如何配置这个游戏!服务器只会监听指定的域名。
我可以在应用程序中通过检查request.host变量来修复它,但是可以玩!意味着是容易的,所以我正在寻找简单的解决方案!
亲切的问候,简
PS I尝试使用http.address配置参数,但应用程序仍然侦听这两个域名。
发布于 2011-07-23 12:28:07
解决这个问题的简单方法是在Play服务器前面使用Apache、Nginx、Lighttp或其他HTTP服务器。将此http服务器配置为您的Play应用服务器的反向代理,以便example1.com:80路由到端口9000,example2:80路由到端口9001。
看一看下面的指南,了解你需要做什么的清晰细节。它实际上显示了正在处理的两个不同的域,类似于您的需求。
http://www.playframework.org/documentation/1.2.1/production#server
发布于 2011-07-23 12:51:12
您要寻找的是虚拟主机模块。有一个可用的,VHost,但我自己还没有试过,我不知道它是否与最新版本的Play框架(1.2.2)兼容。
play-vhost模块增加了编写基于HTTP1.1主机头字段的内容的应用程序的能力。为每个虚拟主机维护单独的数据源。
发布于 2011-07-23 12:31:30
除非您对两台主机都有不同的IP地址,否则没有其他方法。如果没有,则必须检查主机请求头。
https://stackoverflow.com/questions/6800123
复制相似问题