Version: 4.1.2

Web Server: PLT HTTP Server

Jay McCarthy <jay at plt-scheme dot org>

The Web Server collection provides libraries that can be used to develop Web applications in Scheme.

    1 Running the Web Server

      1.1 Instant Servlets

        1.1.1 Customization API

      1.2 Simple Single Servlet Servers

      1.3 Command-line Tools

      1.4 Functional

    2 Scheme Servlets

      2.1 Definition

      2.2 Contracts

      2.3 HTTP Requests

      2.4 Request Bindings

      2.5 HTTP Responses

      2.6 Web

      2.7 Helpers

      2.8 Servlet URLs

      2.9 Basic Authentication

      2.10 Web Cells

    3 Web Language Servlets

      3.1 Definition

      3.2 Usage Considerations

      3.3 Reprovided API

      3.4 Web

      3.5 Stuff URL

      3.6 Web Extras

      3.7 File Boxes

      3.8 Web Parameters

      3.9 Web Cells

    4 Formlets

      4.1 Basic Formlet Usage

      4.2 Syntactic Shorthand

      4.3 Functional Usage

      4.4 Predefined Formlets

      4.5 Utilities

    5 Configuration

      5.1 Configuration Table Structure

      5.2 Configuration Table

      5.3 Servlet Namespaces

        5.3.1 Why this is useful

      5.4 Standard Responders

    6 Dispatchers

      6.1 General

      6.2 Mapping URLs to Paths

      6.3 Sequencing

      6.4 Timeouts

      6.5 Lifting Procedures

      6.6 Filtering Requests

      6.7 Procedure Invocation upon Request

      6.8 Logging

      6.9 Password Protection

      6.10 Virtual Hosts

      6.11 Serving Files

      6.12 Serving Scheme Servlets

      6.13 Serving Web Language Servlets

      6.14 Statistics

    7 Web Config Unit

      7.1 Configuration Signature

      7.2 Configuration Units

    8 Web Server Unit

      8.1 Signature

      8.2 Unit

    9 Continuation Managers

      9.1 General

      9.2 No Continuations

      9.3 Timeouts

      9.4 LRU

    10 Internal

      10.1 Timers

      10.2 Connection Manager

      10.3 Dispatching Server

        10.3.1 Dispatching Server Signatures

        10.3.2 Dispatching Server Unit

      10.4 Serializable Closures

        10.4.1 Define Closure

      10.5 Cache Table

      10.6 MIME Types

      10.7 Serialization Utilities

      10.8 URL Param

      10.9 Miscellaneous Utilities

        10.9.1 Contracts

        10.9.2 Lists

        10.9.3 URLs

        10.9.4 Paths

        10.9.5 Exceptions

        10.9.6 Strings

        10.9.7 Bytes

    11 Troubleshooting

      11.1 What special considerations are there for security with the Web Server?

      11.2 How do I use Apache with the PLT Web Server?

      11.3 IE ignores my CSS or behaves strange in other ways

      11.4 Can the server create a PID file?

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

    12 Acknowledgements

    Index