最近我和其他人一起写了一个web应用程序。他们选择使用Apache,所以我必须使用它。但我是用restas在sbcl
中编写程序的。所以我很困惑如何在Apache后面运行我的应用程序。我试过mod_lisp
,但似乎没用。我得到的只是一个页面,上面写着:Internal Server Error.
当我查看apache错误日志时,我发现:
[core:error] [pid 18294:tid 140614142228224] [client 127.0.0.1:44049] AH00135: Invalid method in request server-protocol
[:error] [pid 18295:tid 140614150620928] (70014)End of file found: error reading from Lisp
现在我更困惑了。。。。
最简单的方法是将Apache配置为充当反向代理。就我个人而言,我更喜欢nginx
,但只要对你有用。
这个想法是,您将运行SBCL,监听某个本地端口,等待来自Apache的请求。Apache将直接接收来自客户端的请求,并将其中一些请求传递给您的web应用程序(可能,您希望外部服务器为您处理静态资产)。