Как это работает
По теме понятно, что статья будет полезна в основном начинающим разработчикам. Я очень хорошо помню, как сам начинал изучать веб, и вещи, которые сейчас кажутся элементарными, тогда вызывали желание утопиться в чашке кофе, хахах.
Главное, что я усвоил - в процессе изучения сложных (по крайней мере на конкретном этапе) вещей лучше сначала понять самые основы, и тогда все остальные знания лягут на крепкий фундамент.
Исходя из этого, давайте сначала разберем сильно упрощенную схему, как CMS MODX "живет" и работает на хостинге. Это упростит понимание работы большинства CMS и MODX в частности.
MODX написан на PHP и в качестве базы данных использует MySQL. На сервере хранятся все файлы MODX: php, css, js. На этом же или другом сервере хранится база данных.
Когда посетитель открывает в браузере наш сайт, его устройство отправляет запрос на сервер. Сервер принимает запрос и запускает соответсвующие PHP скрипты. Эти скрипты запрашивают данные из базы MySQL, выполняют с ними какие-то действия (например, проверка авторизации, расчет % скидки), подставляют их в шаблоны и отдают в браузер посетителя HTML, JavaScript и CSS код. Этот код рендерится браузером пользователя, и он видит готовый сайт.
При установке MODX, по сути, мы закидываем на сервер файлы, которые нужны для работы MODX и создаем базу данных с определенной архитектурой, с которой потом будут взаимодействовать эти файлы.
Для этого нам нужно:
- создать на сервере новую пустую базу данных;
- скачать установщик MODX и закинуть в папку домена;
- запустить установщик, указать доступы к созданной БД;
- проверить, что все работает корректно.
Подразумевается, что домен зарегистрирован и арендован хостинг, они связаны DNS-записями и сайт корректно открывается в интернете. Если еще нет - то можно посмотреть, как это сделать в статье, которую я когда-нибудь напишу.
Если этот этап уже пройден - давайте посмотрим как устанавливается MODX.
Шаг 1 - Создание базы данных
У разных хостеров отличаются интерфейсы панели управления, поэтому я опишу этот процесс на примере Beget.com и Webhost1.ru - хостеров, которых использую сам. У Бегет панель управления собственная, у Вебхост - ISPManager.
В целом у любого хостера есть инструкции по созданию баз данных, либо можно обратиться за помощью в техподдержку. После одного-двух раз уже будет понятно, что сложного в создании БД ничего нет, и ориентироваться можно будет в любом интерфейсе, если он не совсем уж убогий.
Создаем БД в Бегет
Перейдите в раздел Хостинг > MySQL.

Введите наименование базы данных и пароль, нажмите "Добавить".

По умолчанию введенный пароль будет действовать только для обращений к базе данных с этого же сервера.
Бывает такое, что файлы и базу данных размещают на разных серверах для снижения нагрузки - тогда нужно создавать дополнительный доступ. Нажмите кнопку-плюсик "Добавить доступ к БД", укажите IP адрес сервера, на котором будет работать сайт, и задайте пароль. Чтобы открыть доступ всем IP - установите галочку "Единый доступ для различных IP-адресов".
Создаем БД в Webhost
Перейдите в раздел "Базы данных", нажмите кнопку "Создать базу данных".

На открывшейся странице введите наименование новой базы, выберите тип сервера и сервер (оставляем по-умолчанию MySQL), кодировку (оставляем по умолчанию utf8mb4), имя пользователя (обычно совпадает с базой данных), задайте пароль и подтвердите его.

Аналогично с Бегет, изначально БД будет доступна только с этого же сервера. Если нужно подключиться с других адресов - поставьте галочку "Удаленный доступ" и укажите список хостов, с которых нужно будет подключаться к базе.
Шаг 2 - Установка MODX
Для начала нам нужно скачать установщик. Для этого зайдите на официальный сайт MODX, перейдите в раздел Downloads.

На момент написания статьи актуальной стабильной версией MODX является 3.0.1, но, как говорится, есть нюансы:
- по времени существования MODX3 я не уверен, что система обкатана
- часть дополнений не оптимизирована под 3 версию
- не вижу критических отличий от MODX 2
Исходя из этого, в статье буду разбирать последнюю версию 2 поколения — 2.8.4. Но пару раз установив MODX на хостинг, Вы легко сможете установить и другие версии, концептуальных отличий между ними нет.
На странице загрузок листаем вниз, находим ссылку на версию 2.8.4-pl, переходим.

Скачиваем вариант "Advanced Installation Package" - загрузится в виде zip архива.

Затем нужно перенести скачанный архив на хостинг.
Загрузите архив в корневую директорию сайта и распакуйте, чтобы получилась структура вида:
site.ru/ html/ core/ setup/
Либо, если путь к корневой директории указан без папки html, public_html и подобных, то просто:
site.ru/ core/ setup/
Затем нужно начать сам процесс установки.
Для этого откройте в браузере установщик по адресу yoursute.ru/setup/.


В параметрах установки оставляем "Новая установка". Указываем права, назначаемые новому каталогу - 0775 или 0777. Для файлов - 0664 или 0666. Отключаем отправку заголовков X-Powered-By, так как отправка заголовка позволяет внешним системам точно определять, что сайт на MODX, а это создает угрозу безопасности. Переходим далее.

В параметрах подключения указываем данные созданной ранее БД - имя БД, имя пользователя и пароль. Если база расположена на этом же сервере, то оставляем адрес сервера localhost. Если на другом - нужно указать корректный IP адрес для подключения, его обычно можно найти в панели управления.
Префикс таблиц - указанная вручную комбинация букв и цифр, которую скрипт впишет в начало всех таблиц базы данных. Это повышает безопасность системы - если вдруг злоумышленник найдет способ выполнить запрос к базе данных, ему нужны будут имена таблиц. Если мы указываем рандомный префикс - подобрать его практически нереально, поэтому задать его нужно обязательно.
После этого запускаем тест подключения, а за ним тест создания и выборки из БД - скрипты проверят корректность указанных данных и полноту прав пользователя.

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

Далее можно заменить базовые URL. Пути к веб-контенту сайта оставляем по умолчанию - ничего менять не нужно. Пути к коннекторам желательно заменить на сгенерированную буквенно-числовую комбинацию, так как это тоже повышает безопасность системы.
Путь к системе управления, аналогично, нужно прописать свой - это адрес, по которому Вы будете открывать админку.
Существуют специальные парсеры, которые пытаются подобрать адрес входа в админку стандартными наименованиями - mgr, manager, admin и т.д., а затем подобрать к ним пароль или воспользоваться уязвимостями CMS.
Поэтому для повышения безопасности лучше установить что-то отстраненное от управления и админки, но запоминающееся, чтобы потом было легко вводить адрес.

После этого скрипт проведет тесты на корректность технических характеристик, введенных данных, доступов и прочего. Если все нормально - идем далее.

Скрипт выполнит установку MODX и выведет отчет об установке.

Можно перейти в админку по ссылке или ввести указанный ранее путь к системе управления.

В целом на этом установка MODX на хостинг завершена. Далее нужно провести базовую настройку системы, установить необходимые пакеты и начать разрабатывать сайт.
Если Вам понравилась статья - сохраняйте в закладках и можете оставить комментарий. Спасибо за прочтение!
Комментарии (0)