14.1.The HTTP Server
When a request comes in to one of the network interfaces where Virtuoso is listening for HTTP requests, it is matched against a set of virtual directory path mappings. A path mapping has the following attributes:
Interface - interface coming from HTTP request |
Virtual Host - matched virtual host name |
Logical Path - logical path |
Mapped Path - physical location of the resource |
Is in DAV - If the resource is placed in WebDAV domain |
Default page - the name of the page to be returned if none is supplied |
Browseable - allows for returning the list of files in a directory if no specific file is requested |
Security - security restrictions to the resource |
Authentication Function - Virtuoso/PL procedure name, which performs authentication |
Realm - an string applied to Authentication function |
Request Post-processing Function - Virtuoso/PL procedure name, which performs post-processing action, before sending the response |
Database User Account - User account name, on behalf of which active content will be executed |
Figure14.1.HTTP Server Conceptual Diagram

Incoming requests are also checked against the HTTP access control lists. These lists rely on the following attributes of the connection to determine whether the request should be answered:
Client Host or IP Address - the incoming requestor is pattern matched to specify a range. |
Destination Host or IP Address - Destination IP/Host match, also applicable to the proxy capabilities. |
The Virtuoso HTTP server is HTTP/1.1 compliant. It can accept persistent connections from HTTP/1.1 clients. The HTTP/1.0 requests are processed as normal without the persistent connections feature.
Persistent HTTP connections offer several advantages, such as:
Reduced CPU usages by opening and closing fewer connections. |
HTTP requests and responses can be pipelined on a connection. Pipelining allows a client to make multiple requests without waiting for each response, allowing a single TCP connection to be used much more efficiently with lower elapsed time. |
Network traffic is reduced. |
Latency on subsequent requests is reduced. |
![]() |
See Also: |
---|---|
RFC2616 for more details |