108 lines
2.8 KiB
Plaintext
108 lines
2.8 KiB
Plaintext
======================
|
|
Simple Virtual-Hosting
|
|
======================
|
|
|
|
------------------------
|
|
Module: mod_simple_vhost
|
|
------------------------
|
|
|
|
:Author: Jan Kneschke
|
|
:Date: $Date: 2004/08/29 09:43:49 $
|
|
:Revision: $Revision: 1.1 $
|
|
|
|
:abstract:
|
|
virtual hosting
|
|
|
|
.. meta::
|
|
:keywords: lighttpd, virtual hosting
|
|
|
|
.. contents:: Table of Contents
|
|
|
|
Description
|
|
===========
|
|
|
|
Simple assumption:
|
|
|
|
Every virtual host is in a direction below a base directory in a path that
|
|
is the same as the name of the vhost. Below this vhost-path might be a
|
|
extra directory which is the document-root of the vhost.
|
|
|
|
The document-root for each vhost is build from three values:
|
|
|
|
- server-root
|
|
- hostname
|
|
- document-root
|
|
|
|
Either the absolute documentroot is build by ::
|
|
|
|
server-root + hostname + document-root
|
|
|
|
or if this path does not exist by ::
|
|
|
|
server-root + default-host + document-root
|
|
|
|
A small example should make this thinking clean: ::
|
|
|
|
/var/www/
|
|
/var/www/logs/
|
|
/var/www/servers/
|
|
/var/www/servers/www.example.org/
|
|
/var/www/servers/www.example.org/lib/
|
|
/var/www/servers/www.example.org/pages/
|
|
/var/www/servers/mail.example.org/
|
|
/var/www/servers/mail.example.org/lib/
|
|
/var/www/servers/mail.example.org/pages/
|
|
|
|
simple-vhost.server-root = "/var/www/servers/"
|
|
simple-vhost.default-host = "www.example.org"
|
|
simple-vhost.document-root = "pages"
|
|
|
|
You can use symbolic links to map several hostnames to the same directory.
|
|
|
|
Conditionals vs. simple-vhost
|
|
-----------------------------
|
|
|
|
You have to keep in mind that conditionals and simple-vhost interfere. ::
|
|
|
|
simple-vhost.server-root = "/var/www/servers/"
|
|
simple-vhost.default-host = "www.example.org"
|
|
simple-vhost.document-root = "pages"
|
|
|
|
$HTTP["host"] == "news.example.org" {
|
|
server.document-root = "/var/www/servers/news2.example.org/pages/"
|
|
}
|
|
|
|
Even if the ``server.document-root`` will be set to ``/var/www/servers/news2.example.org/pages/``
|
|
if ``news.example.org`` is requested simple-vhost will overwrite ``server.document-root`` shortly
|
|
afterwards.
|
|
|
|
If ``/var/www/servers/news.example.org/pages/`` exists it will be taken, if not
|
|
``/var/www/servers/www.example.org/pages/`` will be taken as it is the default.
|
|
|
|
To get them working in parallel you should use: ::
|
|
|
|
$HTTP["host"] !~ "^(news\.example\.org)$" {
|
|
simple-vhost.server-root = "/var/www/servers/"
|
|
simple-vhost.default-host = "www.example.org"
|
|
simple-vhost.document-root = "pages"
|
|
}
|
|
|
|
$HTTP["host"] == "news.example.org" {
|
|
server.document-root = "/var/www/servers/news2.example.org/pages/"
|
|
}
|
|
|
|
It will enable simple-vhosting for all host with are not named ``news.example.org``.
|
|
|
|
Options
|
|
=======
|
|
|
|
simple-vhost.server-root
|
|
root of the virtual hosting
|
|
|
|
simple-vhost.default-host
|
|
use this hostname if the
|
|
|
|
simple-vhost.document-root
|
|
path below the vhost-directory
|
|
|