Servers

Araneida understands the HTTP/1.1 Host header, to support multiple `virtual servers' in the same instance. Before you can export any handlers, you need to decide the hostnames that you plan to serve content from, and register them with Araneida

# Note: You cannot just invent host names and hope they work. The name you 
# define here must be a valid DNS name for your host. If you don't understand
# this, ask your network administrator.
                                         -- Rob McCool, Apache httpd.conf

Troubleshooting

  1. Araneida cannot configure network interfaces, nor will it administer your DNS for you. Before getting too involved in a virtual host configuration that's not working, check that the hostname(s) you're planning to use are set up and pointing to the right machine.
  2. The communication between Apache and Araneida is HTTP, or at any rate it's good enough that you can (local firewalling ordinances notwithstanding) if you need talk directly to Araneida using a web browser. A request to http://HOST:PORT/ should get you the root page of your Araneida installation - if that works, the problem is in Apache-land.

Function EXPORT-SERVER

Syntax:

export-server server

Arguments and Values:

server - a SERVER object. See server-class.lisp for details

Description:

Registers server with Araneida, so that we know how to answer requests for it. The same registration list is also used for output-apache-conf

Note that the name and port in the server's BASE-URL slot don't have to be (and in fact, usually aren't) the same as in PORT and NAME. BASE-URL is the server's published address - in a normal configuration, Apache will be listening to these and will forward requests onto Araneida on HOST:PORT. You can see this in ../examples/main.lisp which works with Apache on port 80 and Araneida on port 8000