KorniloFF-ScriptS ©

Здравствуйте, Гость!

Путь страницы:   > Веб-мастеру > KFF

KFF

Наступил 2018 год, и пришло время полностью отделиться от выбранной когда-то прототипом CMSimple.

Просто сейчас моя поделка перестала иметь связь с ней. Изменился в корне концепт, пока удалена ПУ - за ненадобностью... Но постараюсь обо всём по порядку.

Поскольку с выпуском нового релиза мне придётся переписывать практически весь цикл статей данного раздела, опечатки и неточности будут неизбежны. Поэтому в ваших силах будет мне помочь, отписавшись в комментах или в фидбэк.

Демо-версия и дистрибутив KFF

Демо-версия CMS

Скачать KFF

По ссылке выше вы увидите 3 последних версии дистрибутива CMS KFF. Рекомендуется к скачиванию архив с последней датой создания, поскольку более ранние версии могут не полностью соответствовать описанным возможностям. Также возможны случаи, когда новые возможности, описанные здесь, ещё не работают в выложенном дистрибутиве.

Если вы установили KFF себе на сервер не забудьте сразу сменить реквизиты админ-доступа по умолчанию. Впрочем, в Панели управления будет висеть напоминание об этом с полем для смены пароля.

ВНИМАНИЕ!!! Пароль редактировать ТОЛЬКО через поле в напоминании о смене пароля!

Установка KFF

Собственно, никакой установки на самом деле нет. Нет инсталляционного файла. Всё, что вам нужно сделать - это скопировать распакованный архив с дистрибутивом, скачанный по ссылке выше, в доменную папку на свой локальный или сетевой сервер. Далее, в качестве примера, будем использовать Демо-версию - kff.js-master.ru:80. После копирования дистрибутива ваш сайт будет выглядеть так же.

Далее зайдём на страницу Авторизации (ссылка в правой части футера). И авторизируемся как Администратор (login:admin, password:test). Теперь вам доступны интерактивные инструменты управления сайтом, а также некоторая техническая информация для админа. При первом входе вы увидите предупреждение для смены дефолтного админ-пароля и поле, в которое нужно ввести новый пароль. Под этим полем предусмотрен чекбокс, позволяющий увидеть вводимые символы - для исключения ошибки без скучного поля для повтора ввода.

Обязательно отредактируйте разделы файла core/config.php под свои нужды. Особенно обратите внимание на разделы Mailform и Meta, введя в них свои данные. В процессе разработки находится веб-интерфейс для редактирования настроек. Так что, в скором времени, процесс еще более упростится.

Ну вот он и готов. Попасть туда можно только под учётной записью Админа. В футере появится ссылка editConfig для быстрого входа в него. Начата работа по созданию подсказок.

После настройки сайта через ПУ можно переходить к формированию его структуры по рекомендащиям соответствующей статьи.

Пожалуй, единственным системным требованием для установки KFF является поддержка сервером PHP 7+. Если столкнётесь еще с какими-то ограничениями - пишите мне, я пока с ними не знаком.

Некоторые особенности

Если вы вдруг забыли пароль, то тогда уже в текстовом режиме открывайте core/config.php, копируйте значение переменной $cf['security']['test'] (9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08) и вставляйте его в переменную $cf['security']['password']. После этого перейдите на страницу Авторизации и введите дефотные регистрационные данные (login:admin, password:test). Вы будете успешно авторизированы как администратор, после чего настоятельно рекомендуется сменить пароль, как описано выше.

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

При выходе из учетной записи Админа производится резервное копирование директорий с контентом и комментариями. Также резервируется файл структуры сайта. Резервные копии сжимаются ZIP-алгоритмом и хранятся в директории content/backup/. Количество создаваемых резервных файлов можно редактировать в настройках.

Внизу страниц, при входе под администратором, расположен зелёный блок for Admin, на который пока можете не обращать внимания. Он мне нужен для отладки самой CMS, а вам, надеюсь, мешать не будет. В паблик-версии я его не удаляю для упрощения выкладывания мною новых версий KFF.

Под ним я сделал маленький информационный блок для администратора, выводящий сведения о скорости загрузки страницы и используемой оперативной памяти сервера. Как правило, время генерации средней страницы составляет 5-10 миллисекунд.

Информация для админа

Модульность

Архитектура CMS имеет модульную структуру, что позволяет подключать/отключать необходимый функционал по желанию. Пока к этой возможности не предусмотрен графический интерфейс, однако, есть системная функция, производящая поиск и подключение модулей, поэтому программно само подключение производится в один её вызов.

В версии 1.х.х подключены только необходимые системные модули.

AJAX

С 2018г. KFF стала ещё быстрее для пользователей за счёт использования асинхронных запросов к серверу (AJAX). Теперь, при переходе на очередную страницу, не происходит полной перезагрузки броузером всех стилей и скриптов, а меняется содержимое лишь блоков с контентом и меню. Эта мера радикально ускорила загрузку страниц при навигации по сайту. В частности, на моём сайте обновление контента после клика на ссылку в меню происходит менее, чем за 1с - при скорости интернета не ниже 1Мб/с.

Использование ajax-технологий, без подключения сторонних фреймворков, всегда сопряжено с рядом проблем. В частности, это - SEO и навигация по истории броузера. Как можно убедиться на моём сайте - каждая страница сайта имеет свои метатеги и title. Навигация по истории также работает во всех современных броузерах, поддерживающих API history.

Размеры сайта

На официальном сайте немецкого прототипа моей CMS заявлено о возможности использования cmsimple для сайтов до 1000 страниц. Но, поскольку немцы хранят весь контент сайта в едином файле, эта цифра становится довольно условной. Ведь могут быть очень объёмные статьи, делающие файл контента просто неподъёмным для парсинга.

В KFF используется другой принцип. В файле контента происходит лишь подключение контента отдельных страниц. То есть, серверная сторона парсит лишь этот, довольно скромный файл. А обнаружив запись о нужной странице сайта - уже подгружает в неё контент из отдельного файла. Думаю понятно, что обработка файлов в 20 кБ и 20 МБ занимает совершенно разное время и системные ресурсы. А ведь это может быть один и тот же сайт!

Таким образом, у вас могут быть достаточно объемные статьи, которые вы подключите в файле content.php в виде внешних файлов, увеличивая его размер лишь на те несколько килобайт, которые занимает сама строка подключения.

Так сколько же будет работать страниц? А Бог его знает, не тестировал. Но, если сравнивать с теми же немцами, - думаю, раз в 10 больше, чем у них. И это - по самым скромным подсчётам. При этом нагрузка на сервер будет даже, пожалуй, меньше, чем у них.

Проблемы с кириллицей

Эх, давнишняя проблема, так полностью нигде не решенная. Нет, ну каждый движок или обходит ее транслитерацией имен файлов (этот метод использую и я - в модуле comments), или ещё какие-то костыли придумывает, но полного решения вопроса: Как использовать кириллические имена файлов без проблем я так пока и не нашел. Большей частью специалисты отписываются в духе: кириллица не для интернета, либо предлагают использовать Punycode.

Скажу больше, я когда-то написал свою CMS, которая была всем для меня хороша, кроме одного - с ней было невозможно работать на локальном сервере на Windows. Именно из-за кириллицы, которая интерпретировалась системой в кодировке CP-1251, хоть сами файлы были закодированы в UTF-8. На Unix-системах такой проблемы не наблюдалось, поэтому в интернете сайт вполне себе работал.

Не вдаваясь в подробности реализации скажу просто - я эту проблему решил, что позволило использовать кириллицу именах файлов страниц сайта. На данный момент я свободно использую эту CMS как на локале, так и в сети.

Заключение

В этом разделе сайта представлен цикл статей, более подробно представляющих мою поделку. Поскольку новая версия очень сильно отличается от предыдущих, сейчас идёт процесс их переписания - по наличию свободного времени у меня самого.

KFF не страдает избыточностью и тяжеловесностью популярных бесплатных CMS. Также она совершенно не зависит от серверов баз данных, что лично для меня - большой плюс. Она не претендует на универсальность, но хорошо справляется со своими задачами.

Не могу сказать, что это лучшее решение для сайта, но уж точно, для определённых категорий сайтов она вполне подойдёт.

Разработка активно продолжается в зимние сезоны (живу в селе).

Комментарии к теме ( 0 )

Дабавить комментарий

Меню раздела