From 1374c262474373282d38ddd122e3b4171896762a Mon Sep 17 00:00:00 2001 From: mainzelm Date: Mon, 24 May 2004 11:59:56 +0000 Subject: [PATCH] Some changes from start-web-server --- web-server/start-extended-web-server | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/web-server/start-extended-web-server b/web-server/start-extended-web-server index c41a70c..589099e 100755 --- a/web-server/start-extended-web-server +++ b/web-server/start-extended-web-server @@ -111,6 +111,11 @@ exec scsh -lel SSAX-4.9/load.scm -lel sunet-2.1/load.scm -dm -o http-test -e mai (else (error "Internal error, option not found" option alist)))) + (define (become-nobody-if-root) + (cond ((zero? (user-uid)) + (set-gid (->gid "nobody")) + (set-uid (->uid "nobody"))))) + (define (main args) (with-cwd (file-name-directory (car args)) @@ -121,9 +126,6 @@ exec scsh -lel SSAX-4.9/load.scm -lel sunet-2.1/load.scm -dm -o http-test -e mai (log-file-name . "/tmp/httpd.log") (requests . 5))) (options (make-options-from-args (cdr args) default-options))) - (cond ((zero? (user-uid)) - (set-gid (->gid "nobody")) - (set-uid (->uid "nobody")))) (format #t "Going to run Webserver with: htdocs-dir: ~a @@ -145,10 +147,10 @@ exec scsh -lel SSAX-4.9/load.scm -lel sunet-2.1/load.scm -dm -o http-test -e mai with-simultaneous-requests (lookup-option options 'requests) with-syslog? #t with-log-file (lookup-option options 'log-file-name) + with-post-bind-thunk become-nobody-if-root with-request-handler (alist-path-dispatcher - (list (cons "h" (home-dir-handler "public_html")) - (cons "seval" seval-handler) + (list (cons "seval" seval-handler) ;; You may want to adapt this to your site. ;; call like http://localhost:8080/man/man?ssh(1) (cons "man" (rman-handler 'man @@ -163,8 +165,9 @@ exec scsh -lel SSAX-4.9/load.scm -lel sunet-2.1/load.scm -dm -o http-test -e mai "Generated by info-gateway")) (cons "cgi-bin" (cgi-handler (lookup-option options 'cgi-bin-dir)))) - (rooted-file-or-directory-handler - (lookup-option options 'htdocs-dir)))))))) + (tilde-home-dir-handler "public_html" + (rooted-file-or-directory-handler + (lookup-option options htdocs-dir))))))))) )) ;; EOF