Седат Игдеджи, Sedat Igdeci, Cedat Igdeci, Bekir Igdeci, Lidiya Igdeci, Elizaveta Igdeci

Создание WWW-домена

Как загрузить веб-сайт на сервер с ISPmanager


Сайт — страница или группа страниц, которые транслируются в интернет и доступны пользователям по URL-адресу. Внешний вид и содержимое сайта формируются из его исходных файлов. Чтобы добавить в ISPmanager сайт, перейдите в Домены → WWW-домены → Создать и укажите параметры создания.

Обратите внимание!

Создать WWW-домен можно, только если установлен веб-сервер. Подробнее см. в статье Установка веб-сервера.

Данные о WWW-домене ISPmanager хранит в своей базе данных. Если вы измените их через форму Домены → WWW-домены → Изменить, ISPmanager обновит данные в базе. Если вы измените их вручную в конфигурационных файлах веб-серверов, то при открытии формы Домены → WWW-домены → Изменить ISPmanager отобразит предупреждение о несовпадении данных. При сохранении формы изменённые вручную параметры будут записаны в базу данных. Подробнее см. в статье Обработка ручных правок конфигурационных файлов веб-серверов.

Изменить настройки веб-сервера для WWW-домена вручную можно в Домены → WWW-домены → Конфиг. ISPmanager проверяет только синтаксис данных указанных вручную в конфигурационных файлах.

При добавлении WWW-домена для него автоматически создаётся доменное имя. Подробнее см. в статье Создание доменного имени.

Основные настройки


  1. Укажите Имя  WWW-домена.

     Пояснения

    В конфигурационном файле Nginx для WWW-домена добавляется строка:

    Конфигурационный файл Nginx
    server_name <имя WWW-домена>;

    В конфигурационном файле Apache для WWW-домена добавляется строка:

    Конфигурационный файл Apache
    ServerName <имя WWW-домена>
  2. Укажите Псевдонимы — дополнительные имена, которые будут использоваться для доступа к WWW-домену. По умолчанию после ввода имени WWW-домена указывается псевдоним «www.<имя домена>». Для псевдонима автоматически создастся ресурсная A-запись. Подробнее см. в статье Создание ресурсных записей доменной зоны.

     Пояснения

    В конфигурационном файле Nginx для WWW-домена в строке

    Конфигурационный файл Nginx
    server_name <имя WWW-домена>;

    добавляются псевдонимы WWW-домена:

    Конфигурационный файл Nginx
    server_name <имя WWW-домена> <псевдонимы WWW-домена>;

    В конфигурационном файле Apache для WWW-домена добавляется строка:

    Конфигурационный файл Apache
    ServerAlias <псевдонимы WWW-домена>;
  3. Укажите Корневую директорию сайта. В ней хранятся файлы сайта на сервере.

     Пояснения

    В конфигурационном файле Nginx для WWW-домена добавляются строки:

    Конфигурационный файл Nginx
    set $root_path <путь к корневой директории>;
    root $root_path;

    В конфигурационном файле Apache для WWW-домена добавляется строка:

    Конфигурационный файл Apache
    DocumentRoot <путь к корневой директории>
  4. Выберите систему для управления содержимым сайта (CMS) в поле Выбор скрипта. CMS используют для наполнения сайта содержимым (статьи, фотографии, страницы и т. п.) Без неё для добавления нового или изменения существующего содержимого потребуется редактировать исходные файлы сайта. ISPmanager поддерживает CMS Drupal, Prestashop, WordPress, joomla, phpBB.

  5. Выберите Владельца WWW-домена — пользователя ISPmanager.

     Пояснения

    В <путь к директории Nginx>/vhosts создаётся директория с логином пользователя. В этой директории создаётся конфигурационный файл Nginx для WWW-домена с названием вида <WWW-домен>.conf.

    В <путь к директории Apache>/conf/vhosts создаётся директория с логином пользователя. В этой директории создаётся конфигурационный файл Apache для WWW-домена с названием вида <WWW-домен>.

  6. Выберите Источник IP-адреса:
    1. получить автоматически — IP-адрес выбирается панелью управления из адресов, добавленных в Настройки → IP-адреса.
    2. указать вручную — IP-адрес можно выбрать в поле IP-адрес из списка добавленных в Настройки → IP-адреса.

       Пояснения

      В конфигурационном файле Nginx для WWW-домена добавляется строка:

      Конфигурационный файл Nginx
      listen <IP-адрес>:<порт>;

      В конфигурационном файле Apache для WWW-домена добавляется строка:

      Конфигурационный файл Apache
      <VirtualHost <IP-адрес>:<порт>>

      По умолчанию используются 80 порт для незащищённого соединения и 443 для защищённого.

  7. Укажите E-Mail администратора — адрес электронной почты, который будет отображаться на страницах ошибок веб-сервера для WWW-домена.

     Пояснения

    В конфигурационном файле Apache для WWW-домена добавляется строка:

    Конфигурационный файл Apache
    ServerAdmin <Email администратора>
  8. Выберите Кодировку. Она определяет набор символов, которыми представляются данные сайта:
    1. Не указывать — будет использоваться значение по умолчанию для базы данных.
    2. utf-8 — включает все символы стандарта Юникод, в том числе латинские и кириллические. Рекомендуем использовать эту кодировку, т. к. она универсальная.
     Пояснения

    В конфигурационном файле Nginx для WWW-домена добавляется строка:

    Конфигурационный файл Nginx
    charset <кодировка>;

    В конфигурационном файле Apache для WWW-домена добавляется строка:

    Конфигурационный файл Apache
    AddDefaultCharset <кодировка>

    Обратите внимание!

    Чтобы изменить список кодировок, создайте файл /usr/local/mgr5/etc/charset и укажите в нём нужные значения.

  9. Укажите Индексную страницу сайта. Эта страница открывается у пользователя, который переходит на сайт по доменному имени и не указал конкретной страницы. Например, при запросе www.example.com или www.example.com/test вместо www.example.com/index.php. Можно указать несколько страниц в порядке убывания значимости через пробел. Если первой указанной страницы не существует, то будет проверяться наличие второй страницы и т. д.

     Пояснения

    В конфигурационном файле Nginx для WWW-домена добавляется строка:

    Конфигурационный файл Nginx
    index <индексные страницы>;

    В конфигурационном файле Apache для WWW-домена добавляется строка:

    Конфигурационный файл Apache
    DirectoryIndex <индексные страницы>
  10. Включите опцию SSI, чтобы перед показом страниц сайта пользователю обрабатывались SSI-команды. SSI — язык программирования для динамической «сборки» страниц на сервере перед их показом.

     Пояснения

    В конфигурационном файле Nginx для WWW-домена добавляется строка:

    Конфигурационный файл Nginx
    ssi on;

    В конфигурационном файле Apache для WWW-домена добавляется строка:

    Конфигурационный файл Apache
    Options +Includes
    
  11. Если нужно, включите опцию Приоритетный. Используется, если на одном IP-адресе доступны несколько сайтов и пользователь запрашивает сайт по IP-адресу, а не доменному имени. В таком случае откроется приоритетный сайт. Если ни один сайт не указан приоритетным, откроется тот, доменное имя которого первое по алфавиту. При этом для кириллических доменов используются имена в кодировке punycode.

     Пояснения

    В конфигурационном файле Nginx для WWW-домена строка

    Конфигурационный файл Nginx
    listen <IP-адрес>:<порт>;

    изменяется на

    Конфигурационный файл Apache
    listen <IP-адрес>:<порт> default;

    В <путь к директории Apache>/conf/vhosts-default/ создаётся символическая ссылка на конфигурационный файл Apache для WWW-домена.

    Обратите внимание!

    Если включить опцию Приоритетный, то проверяется наличие на IP-адресе, который указан для домена, уже существующего приоритетного домена. Если такой домен существует, то он перестанет быть приоритетным.

  12. Выберите способ создания Автоподдоменов. Эта функция позволяет автоматически создавать поддомены, не внося изменений в конфигурацию. Использование автоматических автоподдоменов освобождает от дополнительных операций. Поддомены автоматически добавляются при создании поддиректорий в корневой директории сайта:
    1. отключено — не создавать поддомены.
    2. в отдельной директории — файлы поддоменов нужно создавать в поддиректориях /var/www/www-root/data/www/ с именем поддомена. Например, для поддомена www.test.example.com, корневая директория которого расположена в /var/www/www-root/data/www/example.com файлы поддоменов нужно создавать в /var/www/www-root/data/www/test.example.com.

       Пояснения

      В конфигурационном файле Nginx для WWW-домена добавляются строки вида:

      Конфигурационный файл Nginx
      set $root_path /var/www/www-root/data/www;
          set $subdomain <имя WWW-домена>;
      if ($host ~* ^((.*).<имя WWW-домена>)$) {
          set $subdomain $1;
      }
      root $root_path/$subdomain;

      В конфигурационном файле Apache для WWW-домена добавляется строка вида:

      Конфигурационный файл Apache
      VirtualDocumentRoot /var/www/www-root/data/www/%0
    3. в поддиректории домена — файлы поддоменов нужно создавать в поддиректориях корневой директории сайта. Например, для поддомена www.test.example.com, корневая директория которого расположена в /var/www/www-root/data/www/example.com файлы поддоменов нужно создавать в /var/www/www-root/data/www/example.com/test.

       Пояснения

      В конфигурационном файле Nginx для WWW-домена добавляются строки вида:

      Конфигурационный файл Nginx
      set $root_path /var/www/www-root/data/www/<имя WWW-домена>;
      set $subdomain "";
      if ($host ~* ^((.*).<имя WWW-домена>)$) {
          set $subdomain $2;
      }
      root $root_path/$subdomain;

      В конфигурационном файле Apache для WWW-домена добавляется строка вида:

      Конфигурационный файл Apache
      VirtualDocumentRoot /var/www/www-root/data/www/<имя WWW-домена>/%1

      Обратите внимание!

      При выборе способа создания автоподдоменов «в отдельной директориии» или «в поддиректории домена» в поле  Псевдонимы добавляется значение «*.<имя домена>».

    Обратите внимание!

    Возможность создания Автоподдоменов доступна, если опция Приоритетный отключена для домена.

Настройка защищённого соединения


Чтобы обезопасить данные, передаваемые между браузером пользователя и сайтом, включите опцию Защищённое соединение (SSL). Для защищённой передачи и шифрования данных используется протокол SSL. При этом требуется наличие сертификата для сайта.

 Пояснения

В конфигурационном файле Nginx для WWW-домена создаётся вторая секция server. В ней добавляются строки вида:

Конфигурационный файл Nginx
ssl_certificate "/var/www/httpd-cert/www-root/<имя WWW-домена>.crt";
ssl_certificate_key "/var/www/httpd-cert/www-root/<имя WWW-домена>.key";
ssl_ciphers EECDH:+AES256:-3DES:RSA+AES:!NULL:!RC4;
ssl_prefer_server_ciphers on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_dhparam /etc/ssl/certs/dhparam4096.pem
listen [<IP-адрес>]:<порт> ssl http2;

В конфигурационном файле Apache для WWW-домена создаётся вторая секция server. В ней добавляются строки вида:

Конфигурационный файл Apache
SSLEngine on
SSLCertificateFile "/var/www/httpd-cert/www-root/<имя WWW-домена>.crt"
SSLCertificateKeyFile "/var/www/httpd-cert/www-root/<имя WWW-домена>.key"
SSLHonorCipherOrder on
SSLProtocol +TLSv1 +TLSv1.1 +TLSv1.2
SSLCipherSuite EECDH:+AES256:-3DES:RSA+AES:!NULL:!RC4

Настройте параметры защищённого соединения:

  1. Включите опцию HSTS, чтобы при попытке открыть сайт по незащищённому соединению принудительно открывалось защищённое соединение. Перенаправление срабатывает, только если браузер пользователя уже подключался к сайту по защищённому соединению и запомнил это. При перенаправлении сервер возвращает код ответа «301 Moved Permanently».

     Пояснения

    В конфигурационном файле Nginx для WWW-домена добавляется строка:

    Конфигурационный файл Nginx
    add_header Strict-Transport-Security "max-age=31536000;"

    В конфигурационном файле Apache для WWW-домена добавляются строки:

    Конфигурационный файл Apache
    <IfModule headers_module>
    	Header always set Strict-Transport-Security "max-age=31536000; preload"
    </IfModule>
  2. Включите опцию Перенаправлять HTTP-запросы в HTTPS, чтобы при попытке открыть сайт по незащищённому соединению принудительно открывалось защищённое соединение. Перенаправление срабатывает всегда. При перенаправлении сервер возвращает код ответа «301 Moved Permanently».

     Пояснения

    В конфигурационном файле Nginx для WWW-домена добавляется строка:

    Конфигурационный файл Nginx
    return 301 https://$host:443$request_uri

    В конфигурационном файле Apache для WWW-домена добавляются строки:

    Конфигурационный файл Apache
    RewriteEngine on
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
  3. Если нужно, измените SSL-порт. Он используется для открытия защищённого соединения. По умолчанию — «443».

     Пояснения

    Порт указывается в конфигурационном файле Nginx для WWW-домена в строке:

    Конфигурационный файл Nginx
    listen [<IP-адрес>]:<порт> ssl http2;

    и в конфигурационном файле Apache для WWW-домена в строке:

    Конфигурационный файл Apache
    <VirtualHost <IP-адрес>:<порт>>
  4. Выберите способ создания SSL-сертификата. Он используется для шифрования данных между браузером пользователя и сайтом:
    1. Новый самоподписанный — бесплатный недоверенный сертикат. Если его использовать для публичных сайтов, то соединение не будет считаться безопасным.
    2. Новый Let’s Encrypt сертификат — бесплатный доверенный сертификат.

    Подробнее о сертификатах см. в статье SSL сертификаты.

Настройка защиты от DDoS-атак


Включение защиты доступно, только если установлен веб-сервер Nginx. Подробнее об установке см. в статье Установка веб-сервера.

Чтобы настроить блокировку IP-адресов, с которых поступает большое количество запросов, Включите защиту от DDOS-атаки. В блоке настроек Защита от DDoS-атаки укажите параметры защиты:

  1. Количество запросов в секунду — при превышении этого количества запросов от одного IP-адреса, он блокируется на 5 минут.
  2. Максимальный размер всплеска — при превышении максимального количества запросов в секунду новые запросы блокируются.

     Пояснения

    Используется модуль ngx_http_limit_req_module. Подробнее см. в статье Настройка защиты от DDoS-атак.

Поддержка динамического содержимого


PHP-скрипты

Если для сайта нужна поддержка скриптов на языке PHP, включите опцию PHP и настройте его работу:

  1. Выберите Режим работы PHP:

    1. модуль Apache — динамическое содержимое обрабатывает модуль PHP веб-сервера Apache.
    2. CGI — динамическое содержимое обрабатывает Apache в режиме CGI.
    3. FastCGI (Apache) — динамическое содержимое обрабатывает Apache в режиме FastCGI.
    4. FastCGI (Nginx + PHP-FPM) — динамическое содержимое обрабатывает PHP-FPM.
  2. Для режимов «CGI» и «FastCGI (Apache)» выберите нужную версию PHP (CGI).
  3. Для режима «модуль Apache» отключите опцию Использовать open_basedir, если нужно разрешить PHP-скриптам доступ ко всем директориям сервера. Если опция включена, доступ ограничен корневой директорией WWW-домена.

Подробнее см. в статье Режимы работы PHP.

CGI-скрипты

Если для сайта нужна поддержка CGI-скриптов, включите опцию CGI-скрипты и укажите Расширения файлов CGI-скриптов.

Обратите внимание!

Опция доступна, только если установлен веб-сервер Apache. Подробнее об установке см. в статье Установка веб-сервера.

 Пояснения

В конфигурационном файле Nginx для WWW-домена добавляются строки:

Конфигурационный файл Nginx
location / {
    location ~* ^.+.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
        try_files $uri $uri/ @fallback;
    }
location / {
        try_files /does_not_exists @fallback;
    }
}
location @fallback {
    proxy_pass http://127.0.0.1:8080;
    proxy_redirect http://127.0.0.1:8080 /;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Forwarded-Port $server_port;
    access_log off;
}

В конфигурационном файле Apache для WWW-домена добавляются строки:

Конфигурационный файл Apache
ScriptAlias /cgi-bin/ /var/www/<имя владельца WWW-домена>/data/www/<имя домена>/cgi-bin/
Options +ExecCGI
AddHandler cgi-script <расширения файлов>

Настройка журналов


  1. Чтобы ISPmanager собирал статистику запросов к веб-серверу, включите опцию Журнал запросов.

  2. Подключите анализатор журналов запросов для WWW-домена:
    1. Выберите Генератор отчётов.

      Обратите внимание!

      Доступно, только если установлен веб-сервер Apache и модуль awstats или webalizer. Подробнее об установке см. в статье Установка веб-сервера.

    2. Укажите Период сбора статистики по запросам.

    3. Выберите Язык отчёта.

    4. Если нужно, включите опцию Ограничить доступ к статистике, укажите Пароль для доступа к статистике и его Подтверждение. В качестве логина будет использоваться имя владельца WWW-домена.

  3. Чтобы ISPmanager собирал статистику ошибок веб-сервера для WWW-домена, включите опцию Журнал ошибок.

  4. Выберите Период ротации журналов.

  5. В поле Хранить архивов укажите количество файлов журналов, которое будет храниться в заархивированном виде.

     Пояснения

    В конфигурационном файле Nginx для WWW-домена добавляются строки вида:

    Конфигурационный файл Nginx
    access_log /var/www/httpd-logs/<имя WWW-домена>.access.log;
    error_log /var/www/httpd-logs/<имя WWW-домена>.error.log notice;

    В конфигурационном файле Apache для WWW-домена добавляются строки вида:

    Конфигурационный файл Apache
    CustomLog /var/www/httpd-logs/<имя WWW-домена>.access.log combined
    ErrorLog /var/www/httpd-logs/<имя WWW-домена>.error.log

    Обратите внимание!

    Дисковое пространство, занимаемое архивами, входит в квоту владельца WWW-домена. Подробнее см. в статье Подключение дисковых квот.

Для просмотра записей в журналах перейдите в Настройки web-сервера → WWW-журналы.

Для просмотра сгенерированных отчётов по статистике перейдите в Домены → WWW-домены → Статистика.

Подробнее см. в статье Настройка сбора статистики запросов к сайтам.

Настройка оптимизации


Настройка оптимизации доступна, только если установлен веб-сервер Nginx. Настройте её, чтобы уменьшить время загрузки сайта у пользователей:

  1. Включите опцию Настроить сжатие, чтобы статический контент сайта сжимался. К статическому контенту сайта относятся файлы, которые редко изменяются: изображения, звуки, музыка, видео и т. д. Такие файлы, как правило, занимают большой объём и замедляют загрузку сайта. Укажите Уровень сжатия. Максимальное значение — 9. Минимальное — 1. Рекомендуем — 5.

     Пояснения

    В конфигурационном файле Nginx для WWW-домена добавляются строки вида:

    Конфигурационный файл Nginx
    gzip on;
    gzip_comp_level <уровень сжатия>;
    gzip_disable "msie6";
    gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript

    Подробнее см. в статье Настройка сжатия для WWW-домена.

  2. Включите опцию Настроить кэширование, чтобы контент сайта кэшировался. Укажите Период кэширования и Значение периода, чтобы настроить время, в течение которого данные хранятся в кэше. При кэшировании результат медленных операций, которые выполняются при открытии сайта, сохраняется на указанный период времени. Это позволяет выполнять меньше операций, показывая пользователям заранее сохранённые данные. Однако, если на сайте изменился контент, который был ранее закэширован, пользователи будут получать старые данные из кэша пока не истечёт период его действия.

     Пояснения

    В конфигурационном файле Nginx для WWW-домена в секции location для статических файлов

    Конфигурационный файл Nginx
    location / {
            location ~* ^.+.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
                try_files $uri $uri/ @fallback;
            }

    добавляется строка:

    Конфигурационный файл Nginx
    expires <время кэширования>;

    Например:

    Конфигурационный файл Nginx
    location / {
            location ~* ^.+.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$ {
                expires 2h;
                try_files $uri $uri/ @fallback;
            }

info@mustanhost.by
8.00-20.00
Седат Игдеджи, Sedat Igdeci, Cedat Igdeci, Bekir Igdeci, Lidiya Igdeci, Elizaveta Igdeci