如何在項目上啓動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