Servlets Racket localhost不';无法从中找到文件<;a href>;

Servlets Racket localhost不';无法从中找到文件<;a href>;,servlets,webserver,racket,Servlets,Webserver,Racket,我正试图在Racket中学习网络编程。问题是:当我点击链接时,我的本地主机会写入“未找到文件”,尽管链接没有问题。当我依次在Dr.Racket localhost中运行链接指向的文件时,就可以了。为什么呢?另外,如何在Racket中重定向?您可以通过的#:extra files path选项为web服务器应提供的文件提供额外路径 下面是一个基于您在评论中提供的内容的示例: #lang web-server (require web-server/servlet-env) (define (s

我正试图在
Racket
中学习网络编程。问题是:当我点击
链接时,我的本地主机会写入“未找到文件”,尽管链接没有问题。当我依次在Dr.Racket localhost中运行链接指向的文件时,就可以了。为什么呢?另外,如何在
Racket
中重定向?

您可以通过的
#:extra files path
选项为web服务器应提供的文件提供额外路径

下面是一个基于您在评论中提供的内容的示例:

#lang web-server

(require web-server/servlet-env)

(define (start req)
  (response/xexpr
   `(html (head (title"")) (body (a ((href "/hello.rkt"))"go")))))

;; assuming the module is in /tmp and run from there
(serve/servlet start #:servlet-path "/query.rkt"
               ;; whatever extra file paths you need
               ;; in this example hello.rkt is in /tmp
               #:extra-files-paths (list "/tmp"))

我觉得它与#:servlet路径或其他一些参数有关。你可以分享一些小的示例代码来演示这个问题吗?你试过什么代码?@Asumotakakawa,@benrudgers我试过
(define(start req)`(html(head(title“”))(body(a((href=“/hello.rkt”))(serve-start#:servlet-path”/query.rkt)
,其中文件“hello.rkt”和“query.rkt”位于同一目录JFYI中,将来如果您提供实际运行的示例代码,这将非常有用。您的示例中存在一些语法错误。