我在共享的Web服务器上,我在本地安装了apache2,所以我可以按照我需要的任何方式进行设置。部署yesod应用程序最受支持的方式是什么?我可以将我的apache2设置为Warp的代理。这是最好的设置吗?或者我应该选择FastCGI?
我也很欣赏有关如何设置所有内容的详细信息。我的意思是如何写一个请求处理程序,如果我需要一个,什么apache的VirtualHost应该是什么样的,等等,因为我是yesod的新手。
答案 0 :(得分:5)
根据the Yesod Book,使用反向代理的Warp是推荐的方法,但其中还详细描述了各种其他部署选项。
答案 1 :(得分:2)
Keter非常易于使用。 GitHub页面上有更多文档。它专为Yesod而设计,而yesod
二进制文件支持它,您可以运行yesod keter
来生成应用程序的捆绑版本,然后将其放入/opt/keter/incoming
以便于更新。
Keter位于最前端,因此您不需要Apache或nginx;它可以为https处理SSL。
如果你需要一个功能更全面的前端服务器,在Keter面前运行Apache或nginx似乎是一个坏主意,最好将代理http直接反转到Yesod二进制文件。只需在某种守护程序(systemd
或upstart
)中运行应用程序,在命令行中指定端口号
MyApplication Development -p 3000
然后在匹配的连接上将Apache设置为反向代理为3000。