[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: virtual hosting in apache and file locations



On Tue, Oct 02, 2001 at 10:27:49AM +0200, martin f krafft wrote:
> i always wondered just why debian apache puts the main homepage of a
> server into /var/www. /var isn't made for stuff that's persistens like
> a homepage! in addition, where do virtual hosts go? in general, once
> a virtual host is defined, one had better defined a virtual host for
> the primary hostname too so as to make apache work better (my
> experience). but as soon as server.mydomain.com and
> virtual.mydomain.com are both hosted by the same server, and are both
> virtual domains, they should technically be in the same hierarchy.

07:45PM|> why was /var/www chosen?
07:45PM|<wolfie> DanielS: FHS?
07:46PM|<wolfie> DanielS: not that im saying it makes sense. but thats
the reasoning.

Yes, this starts to get flaky once you get to virtual hosts.

> right now, i solve this by having symlinks from /var/www/servername to
> the homedirectory of the responsible person for the domain, so that
> the actual data reside on /home. but that's not the way debian handles
> this, and i am wondering just why?

I think that a symlink from /var to /home is bad. Maybe if we stored it
under /home/www-data or such.

Actually, this is my proposal (to be common policy for apache and
apache2, but I'm obviously not speaking for Thom):

The default web root will be /var/www/default. There must be no files in
/var/www; as a temporary measure, a daily cronjob may be implemented to
move all files from /var/www to /var/www/default. The same applies for
cgi-bin - the default site has CGIs in /usr/lib/cgi-bin/default, and, as
a temporary measure, a daily cronjob may be implemented to move all
files from /usr/lib/cgi-bin to /usr/lib/cgi-bin/default. Logs should be
in /var/log/apache(2)/default (the 2 obviously only applies for
apache2).

Web documents for virtual hosts should be installed as
/var/www/host.name (e.g. /var/www/www.debianplanet.org). This directory
may or may not be a symbolic link anywhere else. CGIs for virtual hosts
should follow the same format - /usr/lib/cgi-bin/host.name. The same
also applies for logs - /var/log/apache(2)/default. If using virtual 
hosts, there should be directories of this format for all hosts, and 
/var/www/default, /usr/lib/cgi-bin/default and
/var/log/apache(2)/default should be symbolic links to the relevant
directories.


Whaddya think?

Oh, and while I'm at it, please move the apache manual to
/usr/share/apache/manual, and have an Alias /manual/, or such. Or maybe
even a /var/www/default/manual alternative? (I believe Thom implemented
this, but it's on his laptop *sigh*). Currently apache2 has an alias.
This stops conflicts.

Should we also standardise the default configuration to produce a single
combined log by default? (If it does this already, ignore me).

> why is debian apache making /var/www be the main directory, and why is
> debian apache not providing an easily extensible location for virtual
> domain data?

I think that it should remain that way, but hey, this is my main server:
daniel@piro:~% ls -l /var
lrwxrwxrwx    1 root     root            9 Jul  4 09:48 /var ->
/home/var

I think putting the "may or may not be a symlink" bit basically says,
"make it a symlink if you want". IMHO putting it in /home isn't The
Right Thing, but there you go. What does everyone else think?

:) d

-- 
Daniel Stone						    <daniel@sfarc.net>
<Md> Booting... /vmunix.el

Attachment: pgpoy2IE4hRdf.pgp
Description: PGP signature


Reply to: