
Подробный пошаговый чек-лист по настройке CMS MODx revolution. Самый минимальный перечень настроек и действий, которые необходимо осуществить если Вы решили развернуть сайт на MODx. Это базовые настройки для работы сайта, настройки первичной SEO-оптимизации и настройки безопасности. MODx при грамотной настройки устойчива к взлому.
Установка сайта
Подготовка к установке
- Скачать архив с последней версией MODx Advanced: https://modx.com/download/other-downloads.
- Создать новую папку с названием сайта в корне хостинга, добавить новый домен и базу данных MySQL.
- Закачать архив с MODx на хостинг и распаковать либо распаковать и скинуть файлы через FTP.
- Переместить папку core в корень сайта (на уровень выше public_html) и переименовать папку core в core***** для усложнения работы хакерам.
- Переместить папку setup в публичную папку сайта (в public_html).
- Установить шаблон. Обязательно проверить шаблон на мобильную адаптивность.
Установка MODx
- Запустить установку MODx перейдя по ссылке /setup
- Прописать новый путь и название папки core*****
- Во втором шаге обязательно сменить название файла config
- Указать данные базы MySQL.
- Указать данные администратора сайта и пароль.
- Указать новые расположения и имена для папок manager***** и connectors***** для усложнения работы хакерам.
- Произвести установку MODx.
- Войти в систему, удаляя при этом папку с файлом установки /setup.
- Подкорректировать стандартный шаблон сайта, убрав из него ссылку на папку manager.
Внимание! Иногда бывает так, что хостинг клиента не поддерживает сжатие CSS и JS. Как результат, административная панель MODx не работает. В этом случае необходимо удалить все файлы и произвести установку заново, указав во время действий 3/4 что сжимать CSS и JS не нужно. Возможно также редактирование config файла.
Первичная настройка административной панели MODx
Включить русскую версию MODx. Системные настройки Core Language and locale Словарь и язык: manager_language ru cultureKey ru fe_editor_lang ru locale ru_RU.UTF-8 manager_lang_attribute ru modx_charset UTF-8
Настроить дружественные URL (ЧПУ) для красивых адресов. Системные настройки Core Дружественные URL: automatic_alias да friendly_alias_translit russian friendly_urls да friendly_urls_strict да global_duplicate_uri_check нет use_alias_path да (для использования префикса родителя в имени страницы) use_frozen_parent_uris да
Отключение окончания .html для страниц. Содержимое (слева сверху) Типы содержимого -> Новый тип содержимого: имя NOHTML MIME типы text/html описание Убирает .html в адресах страниц Указать новый Тип содержимого по умолчанию за NOHTML в меню Системные настройки Сайт default_content_type NOHTML
Переименовать ht.access создать файлы .htaccess для папок public_html, core, manager, connectors Если этого не сделать, то любые страницы кроме главной работать не будут.
В файле public_html/.htaccess раскомментировать строку, отвечающую за редирект с http://wwww. на http:// 23. В файле core*****/.htaccess все заменить на:
RewriteEngine on
Order deny,allow
Deny from all
#Allow from 178.76.225.143 Vlad
IndexIgnore
Order Deny,Allow
Deny from all
В файле manager, connectors /.htaccess все заменить на
RewriteEngine on
Order deny,allow
Header set X-Robots-Tag «noindex, nofollow»
#deny from all
#Allow from 159.198.14.84 # home
Минимальный набор плагинов
• TinyMCE — графический текстовый редактор содержания страниц
• Ace / CodeMirror — редактор кода с подсветкой — обязательно
• pdoTools — набор сниппетов меню, хлебных крошек, сайтмапов и т.п. — обязательно
• CustomUrls — плагин для автоматического создания красивых url новостей
• translit — плагин для транслитерации адресов — обязательно
• filetranslit — переименование файлов при загрузке, так как у хостинга могут быть проблемы с русскими названиями файлов
• formIt — плагин для создания форм
• AjaxForm — плагин для форм обратной связи. Работает только вместе с formit
• MIGX — расширение создания многоуровневой системы дополнительных полей
• Collections — упорядоченные новости
• Minishop2 – интернет-магазин
• Image+ и phpthumbof и Resizer — для редактирования соотношения сторон и размеров фото при загрузке
• phpthumbon – бывает так, что phpthumbof на сайте не работает
• ResizeImageOnUpload — (не пробовал)
• minifyX — плагин для сокращения CSS и JS
• versionX — плагин для сохранения и восстановления версий сайта — обязательно
• Babel – мультиязычность
• BackupMODX
• SEO Pro + SEO Tab – удобный SEO контроль
• MetaX
• Simple Search – поиск
• CookieConsent – уведомление об использовании на сайте cookie — закон
Создание скрытых технических страниц
• Создать новый ресурс «Технические страницы» Настройки: не показывать в меню, контейнер — да, доступен для поиска — нет, редактор — нет, кеширование — нет;
• Внутри технических страниц создать html документы 404, 403. Настройки: не показывать в меню, контейнер — нет, доступен для поиска — нет, редактор — нет, кеширование — нет; постоянный uri 403 / 404
• Внутри технических страниц создать новый документ sitemap.xml. Настройки: не показывать в меню, тип — xml; обязательно шаблон — пустой, доступен для поиска — нет, редактор — нет, кеширование — нет, постоянный uri — sitemap.xml; В Содержание документа вставить внутрь сниппет:
[[pdoSitemap]] либо [[!StercSeoSiteMap]]
Проверить работу, перейдя по ссылке https://sitename.ru/sitemap.xml
• Создать новый документ robots.txt. Настройки: не показывать в меню, тип — text; обязательно шаблон — пустой, доступен для поиска — нет, редактор — нет, кеширование — нет, постоянный uri — robots.txt; В Содержание документа вставить внутрь код:
User-Agent: *
Allow: /
Crawl-delay: 3
Host: [[++site_url]]
Sitemap: [[++site_url]]sitemap.xml
Проверить работу, перейдя по ссылке https://sitename.ru/robots.txt
Добавить новый источник файлов с ограниченными правами. Медиа -> Источник файлов. Название любое, например Files and pictures
• basePath — assets/files/
• baseUrl — assets/files/
• Изменить ключ источника файлов default_media_source в системных настройках -> core со старого на новый
Первичная настройка сайта
Системные настройки -> Core — Сайт:
• default_content_type -> NOHTML
• publish_default -> да
• site_name -> название Сайта
• site_start -> id главной страницы сайта
• error_page -> id страницы ошибки 404
• site_unavailable_message -> Сайт временно недоступен / The site is currently unavailable
• site_unavailable_page -> id страницы ошибки 500
• unauthorized_page -> id страницы ошибки 403
Изменить настройки SMTP сервера при необходимости.
Установка шаблона и наполнение сайта
- Скопировать файлы шаблона в папку /assets/templates/template_name. Все файлы сайта хранить только в папке assets, иначе после обновления все они могут пропасть.
- Разбить шаблон на чанки.
- Разграничить права администраторов.
- Добавить SSL сертификат.
Установка сборки / обновление / перенос сайта
1. Удаляем кэш и завершаем все сеансы на старом сайте.
2. Заархивировать и скачать все файлы со старого хостинга / сборки.
3. Экспортировать все таблицы со старой базы данных / создать дамп старой базы. Запомнить префикс таблиц и выбрать кодировку UTF-8.
4. На новом хостинге создать новый сайт.
5. Создать новую базу данных с новым именем и кодировкой UTF-8.
6. Скачать новую версию MODx Revolution Advanced https://modx.com/download/other-downloads .
7. Распаковать файлы SETUP и CORE из MODx в корень сайта и папку PUBLIC_HTML. Папку CORE переименовать в папку CORE***** со старого хостинга. При распаковке ГОТОВОЙ СБОРКИ папке CORE присвоить новое название.
8. Закачать и распаковать старые файлы PUBLIC_HTML на новый сервер. При распаковке готовой сборки изменить названия и пути папок MANAGER / COMPONENTS, а также пути к папке CORE и файлу CONFIG в файлах config.core.php в трех местах: PUBLIC_HTML / MANAGER / COMPONENTS.
9. Совершить новую установку MODX со старыми данными папок и новыми данными базы данных. В конце не удалять папку /setup. При распаковке готовой сборки во время установки новой версии MODx всем папкам и файлам, кроме префикса SQL-таблиц присвоить новые названия.
10. Из старой папки /core скопировать все содержимое, кроме папки /config и в новую.
11. Удалить все таблицы новой базы данных. После чего импортировать таблицы из старой / импортировать старую базу из дампа. При распаковке готовой сборки в phpMyAdmin для всех таблиц заменить старый префикс на новый. После этого изменить старый префикс на новый в файле core/config/config.core.php
Сделать расширенное обновление сайта перейдя по ссылке /setup. В конце удалить папку /setup. При распаковке готовой сборки обязательно сбросить кэш браузера и сайта + изменить все данные пользователей, электронной почты, названия сайта и т.п.
После проделанных операций необходимо обновить/переустановить плагины, так как они запоминают старые файловые пути.
Сразу изменить значения настроек для:
- site_name
- emailsender
- emailsubject