Version: 4.1.2
1.4 Functional
"web-server.ss" provides a number of functions for easing embedding
of the Web Server in other applications, or loading a custom
dispatcher. See "run.ss" for an example of such a script.
| (serve | | | | | #:dispatch dispatch | | | | [ | #:tcp@ tcp@ | | | | | #:port port | | | | | #:listen-ip listen-ip | | | | | #:max-waiting max-waiting | | | | | #:initial-connection-timeout initial-connection-timeout]) | |
|
| → (-> void) |
| dispatch : dispatcher? |
| tcp@ : tcp-unit^ = raw:tcp@ |
| port : integer? = 80 |
| listen-ip : (or/c string? false/c) = #f |
| max-waiting : integer? = 40 |
| initial-connection-timeout : integer? = 60 |
Constructs an appropriate dispatch-config^, invokes the
dispatch-server@, and calls its serve function.
The #:tcp@ keyword is provided for building an SSL server. See How do I set up the server to use HTTPS?.
Here’s an example of a simple web server that serves files
from a given path:
| (serve/ports | | | | | #:dispatch dispatch | | | | [ | #:tcp@ tcp@ | | | | | #:ports ports | | | | | #:listen-ip listen-ip | | | | | #:max-waiting max-waiting | | | | | #:initial-connection-timeout initial-connection-timeout]) | |
|
| → (-> void) |
| dispatch : dispatcher? |
| tcp@ : tcp-unit^ = raw:tcp@ |
| ports : (listof integer?) = (list 80) |
| listen-ip : (or/c string? false/c) = #f |
| max-waiting : integer? = 40 |
| initial-connection-timeout : integer? = 60 |
Calls serve multiple times, once for each port, and returns
a function that shuts down all of the server instances.
| (serve/ips+ports | | | | | #:dispatch dispatch | | | | [ | #:tcp@ tcp@ | | | | | #:ips+ports ips+ports | | | | | #:max-waiting max-waiting | | | | | #:initial-connection-timeout initial-connection-timeout]) | |
|
| → (-> void) |
| dispatch : dispatcher? |
| tcp@ : tcp-unit^ = raw:tcp@ |
|
| max-waiting : integer? = 40 |
| initial-connection-timeout : integer? = 60 |
Calls serve/ports multiple times, once for each ip, and returns
a function that shuts down all of the server instances.
This function does not return. If you are writing a script to load the Web Server
you are likely to want to call this functions at the end of your script.