我在一个共享的Web服务器上,并且我在本地安装了apache2,所以我可以根据需要设置它。部署yesod应用程序最受支持的方式是什么?我可以设置我的apache2作为Warp的代理。这是最好的设置?或者我应该只使用FastCGI?推荐部署Yesod的方法是什么?
我也很想知道如何设置一切的细节。我的意思是如何编写一个请求处理程序,如果我需要的话,apache的VirtualHost应该是什么样的,等等,因为我是yesod的新手。
我在一个共享的Web服务器上,并且我在本地安装了apache2,所以我可以根据需要设置它。部署yesod应用程序最受支持的方式是什么?我可以设置我的apache2作为Warp的代理。这是最好的设置?或者我应该只使用FastCGI?推荐部署Yesod的方法是什么?
我也很想知道如何设置一切的细节。我的意思是如何编写一个请求处理程序,如果我需要的话,apache的VirtualHost应该是什么样的,等等,因为我是yesod的新手。
根据the Yesod Book,使用反向代理的warp是推荐的方法,但其他各种部署选项也在此处详细描述。
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匹配的连接。