Пришло мне недавно письмо от одного из читателей с просьбой написать о виртуальных хостах в Апаче. Сложного там ничего нет, а потому приведу один из своих конфигов, а после его разберем построчно. Первое, что нужно сделать – это удалить симлинк /etc/apache2/sites-enabled/default.
Потом добавляем в httpd.conf строку:
NameVirtualHost *:80
Создаем файл domain.tld.vhost в каталоге /etc/apache2/sites-available с настройками виртуального хоста:
<VirtualHost *:80> DocumentRoot /var/www/domain.tld/web ServerName domain.tld ServerAlias www.domain.tld ServerAdmin webmaster@domain.tld ErrorLog /var/www/domain.tld/log/error.log <Directory /var/www/domain.tld/web> Options FollowSymLinks AllowOverride Indexes AuthConfig Limit FileInfo Order allow,deny Allow from all </Directory> # mod_php enabled AddType application/x-httpd-php .php .php3 .php4 .php5 php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -fwebmaster@domain.tld" php_admin_value upload_tmp_dir /var/www/domain.tld/tmp php_admin_value session.save_path /var/www/domain.tld/tmp php_admin_value open_basedir /var/www/domain.tld:/usr/share/php5:/tmp </VirtualHost>
Вот так выглядит конфиг для моего сайта. Дальше делем симлинк:
ln /etc/apache2/sites-available/domain.tld.vhost /etc/apache2/sites-enabled/domain.tld.vhost
Рестартуем Апач и все готово.
Теперь разберем сам конфиг:
- DocumentRoot – корневой каталог сайта
- ServerName – домен сайта
- ServerAlias – второй домен сайта, например, с www
- ServerAdmin – EMail администратора сайта
- ErrorLog – где будет лежать лог-файл ошибок
Дальше идут параметры каталога сайта и тонкие настройки для PHP. Это уж разберите сами. Типа домашнее задание. :)
Постовые: , iwc replica,

Рубрики
Теги: 
Ну грубо говоря да.
Там еще куча нюансов…
ну да надо есче и ДНС-ку поднимать , эх ((((
Не обязательно. ДНС может быть и на сторонних серверах
# netstat -nap | grep 80
покажет Вам кто занял 80-й порт.
SW: у вас нет виртуальных хостов, если вы правили файл «httpd-vhosts.conf», то, возможно, он у вас не включен в основной конфиг httpd.conf (раскомментируйте строчку «Include conf/extra/httpd-vhosts.conf» (она ближе к концу в файле «httpd.conf»)).
в ubuntu основной файл конфигураций apache2.conf а httpd.conf он для внесения собственных конфигураций хозяина этого серва… (и по девалту он пустой)
У меня такой вопросик создал я 2 онологичних виртуал хоста зарегил 2 доменых имени на dyndns.com и no-ip.org но почему то открывается только сайт с доменом dyndns.com а от no-ip.org не хочет … подскажите может гдето есче надо прописать чтот… ?
уже разобрался просто был глюк ссервом
Если я высталяю параметры :
php_admin_value upload_tmp_dir /var/www/domain.tld/tmp
php_admin_value session.save_path /var/www/domain.tld/tmp
то призагрузке файлов большого обьёма вылетает
PHP Error: Missing a PHP temporary folder
знаю что это не находит директорию для загрузки временного складирования файлов… а если в php.ini пропвываю директорию а выше указаные строки коменчу все оки… но мне хотелось чтобы каждый сайт складывал свои ременые файлы в свою директорию, как это поправить ?
уже разобрался… сам