4. Подключим домен к директории на сервере

Когда пользователь вводит ваш домен в браузер. Браузер обращается к вашему серверу. Сервер в свою очередь должен направить браузер в папку с файлами интернет-магазина.

Мы сделаем:

  • Папку (директорию) на сервере, где будут расположены файлы интернет-магазина.
  • Создадим виртуальный хост для домена. Сделаем так, чтобы домен направлял в созданную ранее папку.

Создадим папку для файлов интернет-магазина

Мы используем домен dbazhenov.ru, так и назовём папку.

Вводим в PuTTY команду:

mkdir /var/www/html/dbazhenov.ru

Создадим виртуальный хост

Нам потребуется FileZilla

  1. Откройте FileZilla и подключитесь к серверу.

  2. По умолчанию, вам будет открыт каталог главного пользователя /root

    Кликаем на минус, чтобы перейти в основной каталог сервера /

  3. Пройдите в папку:

    /etc/apache2/sites-enabled/
    
  4. Откройте файл 000-default.conf для редактирования (Открыть/Править):

    /etc/apache2/sites-enabled/000-default.conf
    

    Подсказка

    Можно скопировать файл на компьютер с помощью двойного клика по файлу. Открыть файл на компьютере, отредактировать и загрузить назад, заменив оригинальный.

  5. Замените весь код в файле, на тот что указан ниже.

    При этом замените:

    • dbazhenov.ru на ваш домен
    • /var/www/html/dbazhenov.ru на вашу папку

    Код для файла:

    <VirtualHost *:80>
    # Основной домен
        ServerName dbazhenov.ru
    # Синонимы, если не найден основной домен
        ServerAlias www.dbazhenov.ru
    # email
        ServerAdmin webmaster@dbazhenov.ru
    # Отключает отображение версии Apache
        ServerSignature Off
    
    # Параметры логирования
        CustomLog /var/log/apache2/access.log combined
        ErrorLog  /var/log/apache2/error.log
        LogLevel  warn
    # Основной каталог магазина
        DocumentRoot /var/www/html/dbazhenov.ru
    
    # Правила поведения веб-сервера в основном каталоге (сложно для понимания)
        <Directory />
            Options +Indexes +FollowSymLinks +MultiViews
            AllowOverride All
        </Directory>
    # Правила поведения веб-сервера в основном каталоге (сложно для понимания)
        <Directory /var/www/html/dbazhenov.ru>
            Options +Indexes +FollowSymLinks +MultiViews
            AllowOverride All
            Order allow,deny
            Allow from all
        </Directory>
    
    # Закрываем доступ к папке .svn
        <Directory ~ ".*\.svn">
            Order allow,deny
            Deny from all
            Satisfy All
        </Directory>
    
    # Закрываем доступ к папке .git
        <Directory ~ ".*\.git">
            Order allow,deny
            Deny from all
            Satisfy All
        </Directory>
    
    # Сжатие контента
        AddOutputFilterByType DEFLATE text/plain
        AddOutputFilterByType DEFLATE text/html
        AddOutputFilterByType DEFLATE text/xml
        AddOutputFilterByType DEFLATE text/css
        AddOutputFilterByType DEFLATE application/xml
        AddOutputFilterByType DEFLATE application/xhtml+xml
        AddOutputFilterByType DEFLATE application/rss+xml
        AddOutputFilterByType DEFLATE application/javascript
        AddOutputFilterByType DEFLATE application/x-javascript
    
    # Для старых браузеров
        <IfModule mod_setenvif.c>
            BrowserMatch ^Mozilla/4 gzip-only-text/html
            BrowserMatch ^Mozilla/4\.0[678] no-gzip
            BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
        </IfModule>
        # End: deflate
    
    # Вермя кэширования статических файлов перечисленных выше - 1 месяц
        ExpiresActive On
        ExpiresDefault "access plus 1 month"
    
    # Ещё один способ выставить время кэширования - сутки 86400 секунд
        <FilesMatch "\.(jpg|jpeg|gif|png|js|css)$">
            Header set Cache-control "public, max-age=86400"
        </FilesMatch>
    </VirtualHost>
    

    Подсказка

    Действия кода указаны в комментариях.

    Проверьте, чтобы код точно папал в нужный файл.

  6. Так выглядит код в моём текстовом редакторе Sublime

  7. Перезагрузите Apache

    Выполните в PuTTY команду:

    sudo service apache2 restart
    

Идём дальше! Установим PHP