Work on request handler.

This commit is contained in:
Dominik Pantůček 2025-03-31 21:58:50 +02:00
parent 4cd4fa3bb1
commit cd36a88d12

View file

@ -3,11 +3,15 @@
texts texts
spiffy spiffy
openssl openssl
(chicken tcp)) (chicken tcp)
intarweb
uri-common)
(define -port- (make-parameter #f)) (define -port- (make-parameter #f))
(define -certificate- (make-parameter #f)) (define -certificate- (make-parameter #f))
(define -key- (make-parameter #f)) (define -key- (make-parameter #f))
(define -user- (make-parameter #f))
(define -group- (make-parameter #f))
(command-line (command-line
print-help print-help
@ -48,3 +52,22 @@
(ssl-listen port) (ssl-listen port)
(tcp-listen port))) (tcp-listen port)))
(when (and (-user-) (-group-))
(switch-user/group (-user-) (-group-)))
(handle-not-found
(lambda (path)
(define path-lst (uri-path (request-uri (current-request))))
(print (car path-lst))
(define body
(cond ((equal? (car path-lst) '/)
(print "index")
(frontend-lookup "index.html" "index not found"))
(else
"error")))
(send-response #:body body)))
(accept-loop listener
(if ssl?
ssl-accept
tcp-accept))