2011-11-27 10 views
7

La documentazione Hunchentoot:Come dire a Hunchentoot dove trovare le pagine Web statiche da pubblicare?

"Il metodo per ACCEPTOR prova a servire un file relativo statica alla sua ACCEPTOR-DOCUMENTO-ROOT".

accettore-documento radice accettore => (o nullo percorso)

(setf (accettore-documento radice accettore) nuovo valore)

http://weitz.de/hunchentoot/

Ho problemi nel tradurre questa documentazione nel codice Lisp attuale.

Qualcuno può darmi un esempio di come dire a Hunchentoot dove cercare le pagine Web statiche da pubblicare?

risposta

8

Ecco un frammento che serve una pagina web statica singola:

(push (create-static-file-dispatcher-and-handler 
     "/stylesheet.css" "~/projects/project-x/stylesheet.css") 
     *dispatch-table*) 

Per effettuare una intera cartella a disposizione provare create-folder-dispatcher-and-handler.

8

La traduzione più semplice per il codice sarà questo:

(hunchentoot:start (make-instance 'hunchentoot:acceptor :port 4242 
            :document-root #p"<path to static files dir>")) 
+0

Proprio buttato che nel e funziona dolce. Come l'hai ottenuto dalla documentazione? – mobydick

+1

Il doc può essere un po 'non abbastanza esplicito su questo, ma come dice, c'è un accessor 'aceptor-document-root' nella classe' acceptor', significa che c'è uno slot appropriato in questa classe. E la convenzione in Lisp è quella di fornire 'initarg' per tale slot denominato nome-slot come parola chiave e accessors denominati class-slot-name. Questa convenzione è molto forte e si terrà nel 99% dei casi. –

Problemi correlati