Вы не хотите делать (1) - Оставляют корневой каталог корня в покое. (2) Ваш наилучший вариант - Создают новый каталог, принадлежавший пользователю, которого демон выполнит как и иметь его, делают любой диск ввод-вывод, который он должен сделать в том каталоге.
Полусвязанный, не выполняйте вещи как "никого" - существует старая шутка, что никто обычно не наиболее привилегированный пользователь на *, ОТКЛОНЯЮТ систему потому что все демоны, выполненные как "никто".
Если Вы действительно обеспокоены безопасностью, Вы не хотите попадать в то прерывание. Стоит занять дополнительную минуту для создания преданного пользователя для демонов с соответствующими ограничениями :-)
VirtualDocumentRoot
должен добиться цели.
<VirtualHost *:80>
ServerName catchall.invalid
ServerAlias *
VirtualDocumentRoot /home/user/%0
</VirtualHost>
Если Вы "только" хотите сделать то, что Вы выразили в последнем разделе Вашего вопроса, то просто делают это как этот:
<VirtualHost *:80>
ServerName *.example.com
DocumentRoot /home/user/foo.example.com
</VirtualHost>
И Вы установлены.
Последняя компания веб-сайта, с которой я работал, сделала что-то подобное вместо жесткого кодирования это в апачской конфигурации, мы хотели сохранить конфигурацию в базе данных, позволяя нам обновить его любое время, которое мы хотим и он корректировался бы каждый раз, когда нам было нужно.
http://blog.straylightrun.net/2009/07/31/storing-apache-virtual-hosts-in-a-database/
сообщение в блоге, мы раньше выполняли его.
http://code.google.com/p/dbd-modules/wiki/mod_vhost_dbd
модификация vhost dbd Wiki, хорошая информация о хранении Ваших vhost конфигураций в базе данных.
Думаю, у меня недостаточно кармы, чтобы добавить комментарий, поэтому я добавлю ответ. Ответ Стива Мэддена правильный.
Если вы хотите создать домен разработки на вашем локальном компьютере (например, mycomputer.dev), вы можете использовать уловку VirtualDocumentRoot
вместе с запуском локального DNS-сервера для этого. Затем, когда вы захотите создать новый веб-сайт, просто создайте каталог. Ни редактирования Apache, ни редактирования файлов hosts, ни перезапуска Apache.
Это сообщение в блоге представляет собой практическое руководство для * nix:
http://blog.sznapka.pl/dynamic-lamp-setup-for -localhost-development /
И инструкции по Windows:
http: //blog.straylightrun. net / 2010/05/10 / throw-away-your-hosts-file-develop-local-with-bind /