我一直在想如何设置Play!Centos服务器上的应用程序,但遇到了几个我无法解决的问题。
- 我正在使用git,并有一个工作播放!本地计算机上的应用程序,我想将其部署到服务器上
- 我已经使用
git init --bare
在服务器上的/home/git
中初始化了一个裸git存储库,并按照本教程中的建议,使用git push production +master:refs/heads/master
将提交数据推送到这个裸repo - 计划是在我部署到生产环境时,使用githook自动将我的应用程序签出到我的网站根目录。(请注意,我的裸git存储库所在的
/home/git
目录不是我的web根目录)
所以我在这个阶段的问题是:
-
我应该播放哪个目录!应用程序是否部署到我的服务器上?我读到
var/www/html
是传统的网站,只有一个网站在特定的ip地址运行。 -
我不会使用apache服务器,只是默认的Play!分配但我记得在设置apache服务器时,我们定义了DocumentRoot。我认为我说得对,这定义了http://www.mydomain.com将被路由。由于我没有使用Apache,我该如何定义Play的路由!应用
-
为了一场戏!应用程序,哪个用户应该拥有web根目录?
感谢阅读
对于git,我建议使用gitolite,它很小,但允许通过简单的配置文件管理许多git帐户和用户访问权限。
问题:
- 这根本不重要,你可以使用任何你可以访问的文件夹(甚至通过sudo)DocumentRoot通常用于常见的HTTP服务器。对于任何类型的Java程序,更重要的是使用端口启动应用程序。若要在端口80上启动应用程序,需要通过sudo来完成。要在不同域的端口80上启动更多的应用程序,您需要安装HTTP服务器(即nginx或Apache),并在block的/vhost的配置中使用它作为反向代理。不管怎样,使用过的文件夹仍然无关紧要
- 如前所述,
DocumentRoot
是Apache的指令 - 没有根目录。。。再次
Play通过自己的进程为所有资源提供服务,不直接从文件存储中提供任何服务,因此您的文件尽可能保存在您自己的应用程序允许的范围内(尤其是如果您的机器上没有任何HTTP服务器运行)
另一方面,这样你就不能在端口80上运行更多响应的应用程序,而且每次都会占用处理器来处理静态资产,如css文件、公共图像等。因此,我肯定更喜欢使用一些HTTP作为反向代理/负载均衡器和静态文件的服务器。通过这种方式,我可以在一台主机上放置多个域,HTTP服务器也可以更快地提供文件,并且不会通过将文件发送到浏览器来干扰主应用程序。