14 Сентябрь 2011

Хостинг на дому. Часть вторая. Виртуальный хостинг

Опубликовано в Обучение, Молескин, Блог, Joomla, Програмирование

Итак, я обзавелся Synology DS211 и трех терабайтным диском.

Synology DS211

После ночного форматирования, проверки диска и апдэйта DSM, DiskStation был готов к работе.

Для начала я создал несколько учетных записей, для пользователей сервера. Параллельно запустил прилагаемый к серверу диск, который сам мне все настроил. И в Finder’е в Shared у меня появился DiskStation.

Опущу все остальные настройки и перейду сразу к переезду сайтов.

Для всех последующих действий необходим внешний статический IP адрес


Указание статического IP

  • Идем в Control Panel → System → Network;
  • Выбираем Network Interface → LAN → Use manual configuration → IP address: (например 10.0.1.111) → OK. Screenshot

Настройка роутера

Первым делом необходимо настроить порты. Если твой роутер не попал в список рекомендуемых роутеров, как это произошло у меня, то тебе придется настраивать порты вручную. Если у тебя роутер из списка, DiskStation все сделает за тебя: Control Panel → Router Configuration → etc.

У меня AirPort Extereme. Сейчас расскажу, как его настроить:

  • Открываем AirPort Utility;
  • Выбираем Manual Setup;
  • Идем в Internet → NAT; Screenshot
  • Чекаем Enable NAT Port Mapping Protocol;
  • Нажимаем Configure Port Mappings…
  • Нажимаем +;
  • Вводим значение внешнего порта (например 80), вводим IP DiskStation’а (например 10.0.1.201), вводим значение внутреннего порта (например 200). Таблица внутренних портов Synology;
  • Так я промапил TCP: 80 → 200 для попадания на вебсайт, TCP: 3306 → 3306 для MySQL базы; Screenshot
  • Жмем Update.

Расчистка места для сайтов

  • Идем в Control Panel → Network Services → Web Services;
  • Чекаем Enable Web Station и Enable MySQL;
  • Жмем OK;
  • Нажимаем кнопку Virtual Host. Здесь мы укажем c какого хостнэма в какую папку перенаправлять;
  • В моем случае: go-cz | go-cz.ru | HTTP | 200 и go-cz | www.go-cz.ru | HTTP | 200; Screenshot
  • После этого в папке web появится папка go-cz в которую мы положим пустой index.html файл с красным фоном;
  • Зайдем на 10.0.1.111/go-cz для проверки. Screenshot

Настройка MySQL

  • Идем в Start → Package Center;
  • В Available выбираем phpMyAdmin;
  • Устанавливаем;
  • Запускаем;
  • Теперь по адресу 10.0.1.111/phpMyAdmin у тебя живет phpMyAdmin;
  • Логин: root, пароля нет. Его нужно сразу сделать;
  • phpMyAdmin доступен лишь внутри сети, залогиниться извне не получится.

Перенос сайта на Joomla

Для безболезненного переноса сайта воспользуемся компонентом Akeeba Backup, который сделает копию сайта вместе с базой.

  • Устанавливаем Акибу; Screenshot
  • Идем в настройки;
  • Изменяем способ архивирования на ZIP; Screenshot
  • Сохраняем;
  • Делаем резервное копирование; Screenshot
  • Скачиваем получившийся архив;
  • Копируем его в папку для вебсайта (в моем случае web/go-cz);
  • Распаковываем и удаляем красный index.html; Screenshot
  • Заходим на 10.0.1.111/go-cz и видим Akeeba Backup Installer;
  • Жмем Next; Screenshot
  • Указываем данные новой базы:
    • localhost
    • root
    • пароль
    • название базы
    Screenshot
  • Указываем названия сайта и админовский пароль;
  • Удаляем папку installation;
  • Проверяем. Screenshot

Изменение DNS записей

Тут все зависит от твоего провайдера. Нужно изменить A запись домена с того что было (например, 123.456.789.000) на внешний IP адрес твоего роутера (например, 147.258.369.000). И через несколько часов сайт начнет загружаться из твоей комнаты.

В следующем выпуске я расскажу о настройке мэйлсервера.

PS: Проблема с /blog и /photo

Если на сайте есть путь /blog или /photo, то эти страницы не будут отображаться. Это связано с тем, что у Synology в конфиге аппача они зарезервированы для PhotoStation. Тащем-то.

Решение проблемы:

  • Включаем SSH. Control Panel → Network Services → Terminal;
  • Чекаем Enable SSH services;
  • Открываем Terminal;
  • Логинимся на DS (например, Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра.) и вводим пароль;
  • Копипастим: vi /usr/syno/apache/conf/extra/httpd-autoindex.conf-user;
  • Откроется реактор vi. Жмем i;
  • Жмем стрелку вниз и ставим # перед каждой строкой где упоминаются алиасы или редиректы для photo и blog;
    Приблизительно так:
    AliasMatch ^/photo$ "/usr/syno/synoman/phpsrc/photo"
    Alias /photo/ "/usr/syno/synoman/phpsrc/photo/"
    Alias /photosrc/ "/var/services/photo/"
    Alias /webdefault/ "/usr/syno/synoman/phpsrc/web/"
    # AliasMatch ^/blog$ "/usr/syno/synoman/phpsrc/blog/"
    # Alias /blog/ "/usr/syno/synoman/phpsrc/blog/"
    # RedirectMatch ^/blog/include/v(.*) /blog/include/get_video.php?$1
  • Жмем Esc, печатаем :x и жмем Return;
  • Рестартим апач копипастой: /usr/syno/etc.defaults/rc.d/S97apache-user.sh restart;
  • Проверяем.

Comments (1)

  • lifecom

    lifecom

    06 Апрель 2012 at 20:38 |
    По поводу "Проблема с /blog и /photo":
    а где после всех манипуляций будет находится Photo Station?

    reply

Leave a comment

You are commenting as guest. Optional login below.