В прошлом посте у нас получился Web-сервер, правда хост там всего один – default, но apacahe2 поддерживает, так называемые, виртуальные хосты, т.е. на одном сервере у нас могут работать несколько сайтов (это хорошо видно в Denwer). Настроим наш сервер на работу с виртуальными хостами.
Настройка Apache2 для виртуальных хостов
Первое, что мы сделаем – поправим файл /etc/apache2/httpd.conf по умолчанию он пустой – заполним его новым виртуальным хостомa
NameVirtualHost 127.0.0.1 <VirtualHost 127.0.0.1> ServerName lifelongjourney.ru DocumentRoot /var/www/lifelongjourney.ru </VirtualHost>
Теперь перейдем к двум папкам /etc/apache2/sites-available и /etc/apache2/sites-enbabled. В первой лежат файлы-описания хостов, во второй символьные ссылки для разрешенных хостов. Исправим /etc/apache2/sites-available/default на его нормальный вид (сейчас там вписан наш сайт lifelongjourney.ru) предварительно скопировав его в новый файл
cp /etc/apache2/sites-available/default /etc/apache2/sites-available/lifelongjourney.ru
Правим с помощью MC /etc/apache2/sites-available/default
<VirtualHost *:81> ServerAdmin webmaster@localhost DocumentRoot /var/www/ <Directory /> Options FollowSymLinks AllowOverride All </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride All Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog /var/log/apache2/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/access.log combined Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride All Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory> </VirtualHost>
Делаем правильный линки в разрешенных сайтах
cd /etc/apache2/sites-enabled/ ln –s /etc/apache2/sites-available/lifelongjouerney.ru /etc/apache2/sites-enabled/
Это же делается командой a2ensite
sudo a2ensite lifelongjouerney.ru
Способ выбирайте сами.
nginx – в настройках виртуальных хостов
По сути делается то же, что и для Apache2, структура директорий та же и смысл их такой же. Делаем новый файл в site-available и симлинк на него в sites-enabled
Поделиться в соц.сетях