Version: 5.0

Web Server: Racket HTTP Server

Jay McCarthy

This manual describes the internals of the Racket Web Server.

    1 Dispatching Server

      1.1 Dispatching Server Signatures

      1.2 Dispatching Server Unit

      1.3 Threads and Custodians

    2 Dispatchers

      2.1 General

      2.2 Mapping URLs to Paths

      2.3 Sequencing

      2.4 Timeouts

      2.5 Lifting Procedures

      2.6 Filtering Requests

      2.7 Procedure Invocation upon Request

      2.8 Logging

      2.9 Password Protection

      2.10 Virtual Hosts

      2.11 Serving Files

      2.12 Serving Servlets

        2.12.1 Setting Up Servlets

        2.12.2 Servlet Namespaces

          2.12.2.1 Why this is useful

        2.12.3 Internal Servlet Representation

      2.13 Statistics

      2.14 Limiting Requests

    3 Launching Servers

      3.1 Simple Single Servlet Servers

    4 Web Servers

      4.1 Server Units

        4.1.1 Signature

        4.1.2 Unit

      4.2 Configuration Units

        4.2.1 Signature

        4.2.2 Unit

      4.3 Configuration Table

      4.4 Configuration Table Structure

      4.5 Standard Responders

    5 Internal APIs

      5.1 Timers

      5.2 Connection Manager

      5.3 Serializable Closures

        5.3.1 Definition Syntax

      5.4 Cache Table

      5.5 MIME Types

      5.6 Serialization Utilities

      5.7 URL Param

      5.8 GZip

    6 Troubleshooting and Tips

      6.1 How do I use Apache with the Racket Web Server?

      6.2 Can the server create a PID file?

      6.3 How do I set up the server to use HTTPS?

      6.4 How do I limit the number of requests serviced at once by the Web Server?

    Index