XAMPP + Ubuntu 10.10. Настройка виртуальных хостов

Ubuntu

Мало установить XAMPP нужно еще на нем работать. Обычно одновременно на разработке находяться несколько сайтов, поэтому для полноценной работы нам необходимо настроить виртуальные хосты. Для начала раскомментируем виртуальные хосты в файле

sudo gedit /opt/lampp/etc/httpd.conf

убрав знак # в начале строки:

Include etc/extra/httpd-vhosts.conf

Перезапускаем сервер кнопкой на панеле, а лучше командой в командной строке:

sudo /opt/lampp/lampp restart

Так мы увидем все ошибки, если таковые будут. У меня к примеру выдало следующее:

Warning: DocumentRoot [/www/docs/dummy-host.example.com] does not exist
Warning: DocumentRoot [/www/docs/dummy-host2.example.com] does not exist

Как Apache разбирает файл конфигурации, до него мы еще дойдем, можно увидеть при выводе следующей комманды:

/opt/lampp/bin/httpd -S

У меня вывалились те же ошибки + конфигурация. Давайте начнем настраивать наш сервер для работы с виртуальными хостами. Для начала откроем файл конфигурации:

sudo gedit /opt/lampp/etc/extra/httpd-vhosts.conf

Проверяем чтобы строка:

NameVirtualHost *:80

была раскомментирована. В NameVirtualHost мы должны указать IP адрес и (по-возможности) порт на нашем сервере, который будет принимать запросы для наших хостов. Обычно, а наш случай совсем обычный :), когда любой IP на нашем сервере может быть использован, мы указываем *. Порт будем использовать 80 (HTTP) Следующим шагом у нас идет создание двух тестовых (для примера) виртуальных хоста заключенных в тэги:

<VirtualHost></VirtualHost>

С указанием порта в первом (в нашем случае это опять *:80) Минимально блок должен содержать дерективы ServerName для определения имени виртуального хоста, и DocumentRoot для определения папки размещения файлов проэкта. Первый блок считается блоком по умолчанию, именно поэтому при наборе http://localhost, там где раньше у нас был XAMPP теперь странная ошибка:

Итак первая запись будет выглядеть следующим образом:

<VirtualHost *:80>
    ServerAdmin admin@xampp.ua
    DocumentRoot /opt/lampp/htdocs/xampp
    ServerName xampp.ua
</VirtualHost>

Теперь наш виртуальный хост пропишем здесь:

sudo gedit /etc/hosts

В этом файле впишем строку:

127.0.0.1        xampp.ua

Перезапускаем XAMPP из командной строки:

sudo /opt/lampp/lampp restart

Ошибок теперь должно вылазить на одну меньше, и по адресам http://localhost и http://xampp.ua у нас будет выдавать одинаковые данные:

По аналогии остальные хосты. Можно сделать это с помощью автоматического скрипта, правда я не знаю насколько это необходимо. Жду Ваших комментариев.

Comments

Login with GitHub to leave a comments