Введение. Нужные программы

Наша задача - пошагово разработать и запустить блог на Evolution CMS 3-й версии.

Оглавление

  1. Установка Openserver
  2. Установка VSCode

Функциональность

  • главная страница со списком постов и тегов
  • страница “Посты”, где также будут посты, но уже с пагинацией
  • страница одного поста
  • текстовые страницы, например “Контакты”

Установка и настройка Openserver

На момент написания этого текста Evolution CMS требует для работы веб-сервер с php >= 7.4 и mysql. Я буду работать локально и использовать OpenServer под Windows. Вы можете использовать любые сочетания серверов и операционных систем. Скажем, сразу вести работы на сервере Ubuntu + Apache+ Nginx.

Скачать Openserver можно с сайта разработчика. Установка проходит, как правило, без проблем.

Я установил Openserver в папку D:\OSP.

Настройки

Общие настройки

После установки сервера заходите в настройки, выбирайте версию php и версию базы данных.

Чекбоксы “Вести лог” необязательны, но в сложной ситуации помогут отловить ошибку.

Мои настройки выглядят так:

openserver settings

openserver settings

Настройки домена

После того, как сделаны первоначальные настройки сервера, нужно добавить домен для сайта. Это делается в настройках, вкладка “Домены”.

Я установил сервер в папку D:\OSP. Поэтому в папке D:\OSP\domains сервера я создаю папку evoblog.localhost.

Это будет доменом будушего сайта и рабочей папкой всего проекта. Разумеется, вы можете назвать его так, как вам хочется.

Я по привычке добавляю ко всем сайтам, разрабатываемым в локальной среде, суффикс .localhost. Кто-то пишет сразу рабочий домен (evoblog.com), кто-то добавляет .loc - дело вкуса.

openserver add domain

Добавляйте папку, перезапустите сервер и попробуйте открыть адрес http://evoblog.localhost/. Поскольку директория пустая и мы не создали в ней ничего, вы увидите листинг файлов.

openserver indexof

Это абсолютно нормальное поведение сервера, в дальнейшем картина изменится.

Мелочи

Не отображаются превью в админке

Написано по информации с официального форума OS

По дефолту в Open Server запрещён доступ к папкам, имена которых начинаются с точки. В Evolution есть как раз такой путь - файлы превьюшек в папке .thumbs. Они и не отображаются.

Чтобы решить вопрос, нужно закомментировать небольшой блок кода в конфиге Апача. А если используется связка Апач + Nginx, то и похожий блок в конфиге Nginx.

Все конфиги находятся в папке OpenServer \userdata\config\. Можете вручную найти там конфиги своего текущего профиля и закомментить ненужное, но проще в Open Server открыть Меню > Дополнительно > Конфигурация > Ваш Апач или Апач + Nginx.

openserver config menu

Откроется Sublime Text со всеми конфигами текущего профиля. В редакторе нажмите Shift + Ctrl + F. По дефолту эта панелька ищет по всем открытым файлам - это нам и надо. Наберите well-known, нажмите Find и увидите, в каких файлах есть нужное.

openserver find panel

Дважды щелкнув по найденному коду, перейдёте в файл и закомментите найденные блоки символами #. На всякий случай, вот «ненужные» блоки, которые нужно искать и комментить.

Apache
<LocationMatch "/\.(?!well-known)">
    Require all denied
</LocationMatch>
Nginx
# Disable access to hidden files/folders
location ~* /\.(?!well-known/) {
    deny all;
    log_not_found off;
    access_log off;
}

Установка VSCode

Работать я буду в среде VSCode - решение от компании Майкрософт. Вы можете использовать phpStorm, SublimeText или любую другую ide по вашему выбору.

Скачайте VSCode и установите.

Рекомендую также установить дополнения:

  1. Laravel Blade formatter - форматирование шаблонов blade
  2. phpfmt - PHP formatter - то же для php
  3. PHP Intelephense - помощник для php, сам вставит и найдёт namespace, позволит перейти по клику в нужную модель/контроллер.

Опционально

  1. Settings Sync - для синхронизации настроек между разными компьютерами.
  2. Любые доп. плюшки для визуального оформления, паки иконок, автокомплит тегов, html/css и т.д. Найти это всё можно, поискав обзоры плагинов для VSCode.
  3. Project Manager - удобная штука, позволяет сохранять папку как проект и переключаться между ними.

Теперь открывайте VSCode, Файл->Открыть папку и выберите папку будущего сайта. У меня это папка D:\OSP\domains\evoblog.localhost, у вас она может отличаться.

Картина должна быть такая:

vscode

Итог

  • У вас должен быть работающий сервер и созданный домен evoblog.localhost, на который вы можете перейти в браузере.
  • Среда разработки должна открываться и позволять работать в папке проекта.

Если всё хорошо, переходите к установке Evolution CMS.