昨晚大部分时间我都在浏览hunchentoot文档和源文件,但是没有找到一个关于如何禁用静态文件服务的提示。
我所需要的只是编写一些处理程序,这些处理程序响应HTTP请求。由于我没有在文档中找到任何关于如何禁用静态文件共享的提示,我觉得无法在这里进行任何“编码尝试”,以及这个问题。
我目前(未经测试的第一次尝试)是给:document-root值nil,但是没有文档说明hunchentoot将用它做什么(要么我想要什么,要么使用默认的root-dir.)。
(let ((acceptor (make-instance 'hunchentoot:easy-acceptor
:port port
:document-root nil
:name 'storage-acceptor)))
;; ...
)事实上,hunchentoot似乎大量使用CLOS使我更加困难,因为我通常不使用CLOS,而坚持“正常”的lisp编程(也是出于性能原因.)。
hunchentoot的另一个混淆点来自于一些(至少对我来说)新的全局变量用法(我以前从未见过defvar-unbound或任何类似的东西)。
因此,如果您提供了如何禁用与hunchentoot一起服务的文件的示例片段,请不要过多地假设我的CLOS和全局变量技术知识。
另外,我希望在代码中使用single-threaded-acceptor,因为hunchentoot将在程序中的单个线程上运行lparallel任务。但不确定这是否会对你的答案产生影响。
发布于 2021-12-15 16:50:25
通过读取acceptor.lisp中的初始化和使用,我非常确信将document-root显式设置为nil将禁用从文件系统查找静态文件。我同意应该对此进行测试,并将其添加到文件中。
https://stackoverflow.com/questions/70355053
复制相似问题