Pull to refresh

Настройка сервера Synology: веб-сервер

Computer hardware
Sandbox
Приветствую хабрачитателей!

В сегодняшнем посте я хочу поделиться опытом настройки веб-сервера Synology на ОС DiskStationManager (DSM) v3.2-1955.

Эта инструкция, по моему мнению, подойдёт для любой модели NAS-сервера Synology у которых все отличия только в аппаратной части. Программная часть крутится на DSM, которая регулярно обновляется.

Введение

Недавно я приобрёл NAS-сервер SynologyDS 712+.
image
Мотивацией к написанию поста послужили ряд непонятных мне проблем при поднятии веб-сервера. Хочу систематизировать полученные знания и опыт в данном посте.

Начало

Всё началось с того, что после настройки сервера по мануалу, приложенному на CD, не смог поднять виртуальные хосты и, как следствие, добиться нужной мне работоспособности нескольких сайтов на одном сервере.

Установка phpMyAdmin

Если вы планируете «подвязать» ваши сайты на базу данных (БД) рекомендую сразу поставить phpMyAdmin (PMA) для удобства работы с БД (мне БД пока не нужна из-за специфичности необходимой мне задачи):
  • Клацаем по кнопке быстрого доступа вверху рабочей области DSM и открываем «Центр пакетов»

    image

  • В Центре пакетов выбираем вкладку «Доступно» и находим / устанавливаем PMA

    image

  • После установки PMA переходим во вкладку «Установлено» Центра пакетов и запускаем PMA

    image

  • Проверим PMA — заходим по своему внешнему IP сервера, либо по локальному 192.168.Х.Х и далее дописываем в адресе /phpMyAdmin/, т.е. как это у меня: 192.168.1.39/phpMyAdmin/ — по умолчанию логин root, пароль оставляем пустым;

  • Видим такую картину

    image

  • Конечно же пароль для root после этого нужно сменить и при необходимости создать новых пользователей БД со своими правами — всё это делается уже в PMA.
Запуск и настройка веб-сервера
  • Заходим в «Панель управления» → «Веб-службы»

    image

  • Активируем чекбоксы «Включить Web Station» и «Включить MySQL»

    image

  • Клик на кнопке «Виртуальный хост» и создаём виртуальные хосты под свои сайты

    image:
    1. «Имя подпапки» — имя подпапки в папке «web», в которой будет лежать ваш сайт;
    2. «Имя хоста»- имя хоста по которому будет происходить обращение к вашему сайту:
      1. В моём случае я у своего хостинг-провайдера создал поддомен download.abandongames.ru;
      2. Для него в настройках/управлении DNS отредактировал А-запись прописав СТАТИЧЕСКИЙ внешний IP своего сервера;
      3. Через какое-то время (до нескольких часов) происходит обновление DNS записей и с вашего домена/поддомена будут идти запросы на ваш сервер;
      4. Линк для наглядности

        image
    3. Если у вас нет СТАТИЧЕСКОГО IP, а есть динамический, который вам каждый раз при подключении к Интернет выдаёт интернет-провайдер, то вам поможет «Панель управления» → «DDNS»

      image

      — регистрируетесь, указываете имя хоста для DDNS и вписываете это имя в поле виртуальных хостов;

    4. «Протокол» и «Порт» можно не трогать, если у вас нет необходимости в этом.
  • Для дополнительных настроек заходим на вкладку «Настройки PHP» и донастраиваем «по нуждам» опции и расширения PHP

    image

  • Всё. Веб-сервер настроен и уже работает.
Запуск сайта
  • Заходим на сервер, например, по локальному IP через:
    1. Проводник Windows;
    2. Файловый менеджер;
    3. Средствами DSM (проводник)
  • Видим примерно такую файловую структуру

    image

    — для нас важна папка «web»;

  • Заходим в папку «web» и видим ту самую подпапку (в моём случае abandongames), которую мы прописали в виртуальных хостах в поле «Имя подпапки»

    image

  • В неё вы и будете заливать ваш будущий сайт. А для начала зальём просто тестовый файл index.php с кодом вида:
    <?
    print 'Это мой первый сайт на домашнем сервере';
    ?>

  • Заходим в браузере по домену/поддомену, который мы указали в виртуальных хостахи видим наше сообщение. Радуемся и машем. :) Всё. Сервер настроен и можно приступать к работе над своим/своими сайтом/сайтами.
Доступ по FTP
  • «Панель управления» → «FTP»

    image

  • Активируем чекбокс «Включить службу FTP»;
  • Рекомендую активировать чекбоксы «Включить поддержку имени файлов UTF-8» и «Включить Журнал передачи по FTP»;
  • Настроить ограничения как вам нужно. У меня так:

    image

  • Всё. Доступ по FTP активирован.
Тонкости, на которые стоит обратить внимание
  1. Самое главное — не нужно создавать подпапки «www» в папках с сайтами в которых будет наш index.php, как это написано в мануале к серверу! Т.е. в /web/abandongames/www/ — папка «www» не нужна!
  2. Общая папка «web» также может содержать index.htm, index.html или index.php, в данном случае подпапка «www» так же не требуется;
  3. Для генерации своих страниц ошибок необходимо положить в корень общей папки «web» файлы missing.html, missing.htm или missing.php. Вероятней всего, что для подпапок с сайтами так же применимо это правило, т.е. /web/abandongames/missing.php;
  4. Запрещено создавать в общей папке «web» подпапки «blog», «photo», «photosrc», «webdefault»;
Некоторые рекомендации
  1. Закройте 5000 порт, если не управляете сервером удалённо, а если управляете, то пропишите в настройках роутера только разрешённые IP с которых вы планируете входить в DSM;
  2. При установки PMA необходимо изменить пароль доступа для root и при необходимости создать новых пользователей БД (в PMA) со своими правами;
  3. При манипуляциями файлами сайтов работать нужно в бинарном режиме (FTP);
  4. Если что-то на сайте не работает (какой-то функционал не зависящий от кривых рук), первоначально нужно проверить права доступа на файл/папку сайта в FTP режиме и выставить соответствующие права;
  5. Пробросить на роутере необходимые порты

    image

    В данном случае у меня для FTP 20 порт проброшен на один сервер, 21 порт на другой, поэтому не удивляйтесь.
Надеюсь своим постом я облегчу поднятие домашнего веб-сервера Synology.

Благодарю за внимание.

P.S. Жду конструктивную критику и апдейты к посту.
Tags:веб-серверsynology
Hubs: Computer hardware
Total votes 35: ↑27 and ↓8+19
Views49K

Popular right now

Top of the last 24 hours