"Программист — это профессиональный конвертер галлюцинаций заказчика в жесткую формальную систему"
Dec 282012
 

В прошлом посте у нас получился 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

Поделиться в соц.сетях

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)