如何在项目上启动Hunchentoot?我查看了Edi Weitz的指南,一切安然无恙。列出的教程或者被破坏或者被实际的服务器使用率所剔除。如何启动Hunchentoot?
我有我的asdf文件,使用quicklisp安装了依赖项,并设置了一个调度表。我如何让Hunchentoot使用这些东西?
如何在项目上启动Hunchentoot?我查看了Edi Weitz的指南,一切安然无恙。列出的教程或者被破坏或者被实际的服务器使用率所剔除。如何启动Hunchentoot?
我有我的asdf文件,使用quicklisp安装了依赖项,并设置了一个调度表。我如何让Hunchentoot使用这些东西?
您在acceptor
的实例上调用start
。
如果您使用hunchentoot自带的基本easy-handler
机制,那将是一个easy-acceptor
。
你会想要一个机制来启动和停止你的服务器。这可能是这样的:
(defvar *acceptor* nil)
(defun start-server()
(stop-server)
(start (setf *acceptor*
(make-instance 'easy-acceptor
:port 4242))))
(defun stop-server()
(when *acceptor*
(stop *acceptor*)))
(start (defparameter hunchentoot-listener
(make-instance 'easy-acceptor
:port 4242
:document-root #p"/path/to/your/html/")))
将让你在端口上运行的Web服务器4242(http://localhost:4242/)
要更新,我在斯万的回答改进:
(defun start-server()
(stop-server)
(start (setf *acceptor*
(make-instance 'easy-acceptor
:port 4242))))
(defun stop-server()
(when *acceptor*
(when started-p *acceptor*
(stop *acceptor*))))
启动服务器之前,acceptor为零。在服务器启动后(即使它随后被停止),它不再是零。启动-p测试检查是否启动了初始化的易接受器。如果您尝试停止已停止的接受方,则会收到错误消息。
http://weitz.de/hunchentoot/#start是这样吗? – 2013-11-02 15:20:57