部署游戏!框架应用程序

tom*_*tom 13 playframework

在命令之后play run,Play如何作为计算机上的主机启动?它是在幕后运行apache,tomcat还是其他?

如果我想让我的应用程序(使用play!framework构建)托管在例如apache上,那么这将是一件容易的事吗?

lob*_*234 14

它在幕后运行netty.如果要将它托管在像Tomcat或Jetty这样的servlet容器下,只需从项目文件夹中执行此操作:

play war -o /tmp
Run Code Online (Sandbox Code Playgroud)

并且您将在/tmp文件夹中看到项目的war文件.把它粘在webappsTomcat或Jetty的文件夹下,你应该好好去.您可以像使用任何此类设置一样使用Apache/httpd前端servlet容器(即,您的战争来自Playframework的事实不会对前端部分产生任何影响).


Bra*_*ace 11

Play通常使用自己的服务器(play.server.Server类)运行.通过其他服务器(如Apache)访问Play应用程序永远不会比直接访问Play服务器更快,但如果您想出于其他原因,请参阅将您的应用程序投入生产.


小智 5

为了清楚起见,从play2开始,不再有任何官方支持将您的项目打包为war文件,而且看起来支持不会很快回来.

Play2现在有自己的基于Netty的网络服务器,并且要部署你可以使用"播放阶段"打包你的项目并使用"target/start"命令就地运行它.

如果您要在没有安装Play2的服务器上托管您的项目,只需先使用"sbt compile stage"命令,它将为您捆绑必要的依赖项.

如果你仍然有兴趣部署到Servlet 3.0或2.5容器(Tomcat 6/7,Jetty 7/8/9,JBoss 5),那么在https://github.com/dlecan/play2-war-plugin上会有非正式的努力./ 6/etc)我个人没有使用过这个,但我听说过它的好消息.