Java 如何更改重定向和电子邮件URL使用的端口?

Java 如何更改重定向和电子邮件URL使用的端口?,java,playframework,playframework-2.0,play-authenticate,Java,Playframework,Playframework 2.0,Play Authenticate,目前,我们正在端口9000上运行Play应用程序,Apache作为前端HTTP服务器,如下所示: <VirtualHost *:80> ServerName vms.gltd.net ProxyPass /http-bind http://vms.gltd.net:5280/http-bind/ ProxyPassReverse /http-bind http://vms.gltd.net:5280/http-bind/ ProxyPass / h

目前,我们正在端口9000上运行Play应用程序,Apache作为前端HTTP服务器,如下所示:

<VirtualHost *:80>
    ServerName vms.gltd.net

    ProxyPass /http-bind http://vms.gltd.net:5280/http-bind/
    ProxyPassReverse /http-bind http://vms.gltd.net:5280/http-bind/

    ProxyPass / http://vms.gltd.net:9000/
    ProxyPassReverse / http://vms.gltd.net:9000/
</VirtualHost>
但是,当用户注册Play Authenticate时,使用Play.mvc.Http.Request的端口,该端口不是80

有没有办法覆盖端口播放身份验证使用,或者我们必须将播放应用程序移动到它自己的服务器上,并在端口80上运行它

谢谢

-Leon

试试这个,从:

高级代理设置 使用HTTP前端服务器时,请求 地址被视为来自HTTP服务器。在通常的设置中, 在同一个平台上运行Play应用程序和代理 机器上,Play应用程序将看到来自127.0.0.1的请求

代理服务器可以向请求添加特定的头,以告知 请求来自的代理应用程序。大多数web服务器将 添加一个X-Forwarded-For标头,远程客户端IP地址为 第一个论点。如果代理服务器在本地主机上运行,并且 从127.0.0.1连接,Play将信任其X-Forwarded-For报头。 如果您正在另一台计算机上运行反向代理,则可以设置 应用程序中的trustxforwarded配置项为true 配置文件,如下所示:

trustxforwarded=true 
但是,主机标头未被触及,它仍将由代理发出。如果使用Apache 2.x,可以添加如下指令:

ProxyPreserveHost on 
主机:标头将是原始主机 客户端发出的请求头。通过将这两种方法结合起来 技术,您的应用程序将显示为直接公开

如果您不希望此play应用程序占用整个根目录,请添加一个 代理配置的排除指令:

ProxyPass /excluded !