Создание виртуальных хостов с mod_mysql vhost в Lighttpd на Ubuntu
Это руководство поможет Вам использовать mod_mysql_vhost для создания простых виртуальных хостов на Lighttpd веб-сервере в Ubuntu. С mod_mysql_vhost, Lighttpd можно прочитать конфигурацию виртуальных хостов из базы данных MySQL. В настоящее время, вы можете хранить домен и документы пользователя рут в базе данных MySQL, что приводит к очень простому использованию. Если вам нужно больше директив для ваших виртуальных доменов, вам придется настроить их в глобальной секции lighttpd.conf. Поэтому mod_mysql_vhost идеально подходит, если ваши виртуальные домены различаются только в корневом домене и в документами.
Я не даю никаких гарантий, что это будет работать у вас!
Приступим к созданию виртуальных хостов с mod_mysql vhost в Lighttpd на Ubuntu, для начала «зарутимся»:
# sudo su
После этого установим MySQL 5 выполнив команду:
# apt-get install mysql-server mysql-client
Вам будет предложено ввести пароль для суперпользователя (для пользователя root) MySQL — это пароль едины для root@localhost а также root@server1.for_test.com, поэтому мы должны указать пароль администратора MySQL вручную позже :
Новый пароль для MySQL «root» пользователя: <- your_root_sql_passwd
Повторите пароль для MySQL «root» пользователя: <- your_root_sql_passwd
Установка Lighttpd И mod_mysql_vhost
Вы можете установить Lighttpd (если он еще не установлен) и mod_mysql_vhost следующим образом:
# apt-get install lighttpd lighttpd-mod-mysql-vhost
Чтобы включить mod_mysql_vhost, мы открываем /etc/lighttpd/lighttpd.conf и добавляем / включаем «mod_mysql_vhost», в server.modules строфы:
# nano /etc/lighttpd/lighttpd.conf
server.modules = ( "mod_access", "mod_alias", "mod_compress", "mod_redirect", "mod_mysql_vhost", # "mod_rewrite", ) [...]
После чего, мы перезапустить Lighttpd:
# /etc/init.d/lighttpd restart
Настройка mod_mysql_vhost
Теперь мы войдем в MySQL :
# mysql -u root -p
… И создадим Lighttpd базы данных :
CREATE DATABASE lighttpd;
Далее мы создаем пользователя базы данных ( которые я назвал Lighttpd ) с некоторыми привилегиями для базы данных Lighttpd :
GRANT SELECT ON lighttpd.* TO lighttpd@localhost IDENTIFIED BY 'secret'; GRANT SELECT ON lighttpd.* TO lighttpd@localhost.localdomain IDENTIFIED BY 'secret'; FLUSH PRIVILEGES;
( Замените secret любым паролем)
Затем создаем таблицу domains в базе данных Lighttpd и выйдем с MySQL:
USE lighttpd; CREATE TABLE domains ( domain varchar(64) not null primary key, docroot varchar(128) not null ); quit;
Сейчас мы открываем /etc/lighttpd/lighttpd.conf и добавьте следующий mod_mysql_vhost в конфигурацию в конце файла :
# nano /etc/lighttpd/lighttpd.conf
[...] mysql-vhost.db = “lighttpd” mysql-vhost.user = “lighttpd” mysql-vhost.pass = “secret” mysql-vhost.sql = “SELECT docroot FROM domains WHERE domain=’?';” mysql-vhost.hostname = “localhost” mysql-vhost.port = 3306
( Замените secret паролем который вы ранее установили для пользователя Lighttpd MySQL. )
Перезагрузка Lighttpd :
# /etc/init.d/lighttpd restart
Теперь пришло время настроить виртуальные хосты =)
Настройка виртуальных хостов
Сейчас я настроить два виртуальных хостов , один для www.for_test.com (с корневой директорией /var/www/www.for_test.com/web) и еще один для www.for_test.org ( /var/www/www.for_test.org/web).
Создадим директории для наших сайтов:
# mkdir -p /var/www/www.for_test.com/web # mkdir -p /var/www/www.for_test.org/web
Войдем в MySQL и добавим кое что еще:
# mysql -u root -p USE lighttpd; INSERT INTO domains VALUES (‘www.for_test.com’,'/var/www/www.for_test.com/web/’); INSERT INTO domains VALUES (‘www.for_test.org’,'/var/www/www.for_test.org/web/’); quit;
Вот и все, все виртуальные домены теперь настроены и работают, и не нужно перезапускать Lighttpd. Чтобы проверить, работают ли виртуальные домены мы создаем файл index.html в каждой директории документа, со строкой»www.for_test.com» , а в другом файле добавим строку «www.for_test.org»:
# echo “www.for_test.com” > /var/www/www.for_test.com/web/index.html # echo “www.for_test.org” > /var/www/www.for_test.org/web/index.html
Введите в браузере имя вашего домена и у вас отобразится строка. Создание виртуальных хостов с mod_mysql vhost в Lighttpd на Ubuntu подошло к завершению. Если есть вопросы, пишите мне.