yii2-maintenance-mode

Выкладываем свои наработки
Ответить
Аватара пользователя
BrusSENS
Сообщения: 565
Зарегистрирован: 2012.07.26, 06:51
Откуда: Новороссийск
Контактная информация:

yii2-maintenance-mode

Сообщение BrusSENS »

Сделал расширение для режима обслуживания сайта на Yii2.
Собственно сама идея позаимствована с расширения для первой ветки.

Актуальная версия 0.2.5

v0.1.0
  • Стартовая версия
v0.2.0
  • Добавлены Asset'ы
  • Добавлены Layout'ы
  • Убраны ошибки инициализации
  • Вместо $this->renderFile() теперь $this->render()
  • Мелкие поправки
v0.2.1
  • Добавлен отдаваемый по умолчанию код состояния 503 (stefandoorn)
v0.2.2
  • Добавлена возможность работы через консоль (co11ter)
  • Исправлен баг с отдачей кода при работе с ajax и с разрешёнными экшенами.
v0.2.3
  • Исправлена синтаксическая ошибка и другие правки
  • Убран русский перевод README, теперь только инглиш.
v0.2.4
  • Добавили HTTP Header Retry-After (Ibra1994)
  • Мелкие правки в коде
v0.2.5
  • Теперь работает и в advanced template
  • Исправлена работа в консоли
v0.2.6
  • Добавлены маски для IP
  • Компонент по умолчанию теперь выключен
  • PHPDOC
  • Немного "причесал" код
Страница расширения на гитхабе
Установка
Последний раз редактировалось BrusSENS 2017.06.19, 04:32, всего редактировалось 9 раз.
Native Web - небольшой блог о веб разработке (временно на ремонте)
Режим обслуживания сайта для Yii 2.x.x
Аватара пользователя
BrusSENS
Сообщения: 565
Зарегистрирован: 2012.07.26, 06:51
Откуда: Новороссийск
Контактная информация:

Re: yii2-maintenance-mode

Сообщение BrusSENS »

Релизнул новую версию 0.2.0. Исправил множество ошибок.
Native Web - небольшой блог о веб разработке (временно на ремонте)
Режим обслуживания сайта для Yii 2.x.x
Аватара пользователя
BrusSENS
Сообщения: 565
Зарегистрирован: 2012.07.26, 06:51
Откуда: Новороссийск
Контактная информация:

Re: yii2-maintenance-mode

Сообщение BrusSENS »

Native Web - небольшой блог о веб разработке (временно на ремонте)
Режим обслуживания сайта для Yii 2.x.x
Аватара пользователя
BrusSENS
Сообщения: 565
Зарегистрирован: 2012.07.26, 06:51
Откуда: Новороссийск
Контактная информация:

Re: yii2-maintenance-mode

Сообщение BrusSENS »

Дополнили консолью, исправили проблему с ajax запросами и кодами. https://github.com/brussens/yii2-mainte ... tag/v0.2.2
Native Web - небольшой блог о веб разработке (временно на ремонте)
Режим обслуживания сайта для Yii 2.x.x
Аватара пользователя
maleks
Сообщения: 1985
Зарегистрирован: 2012.12.26, 12:56

Re: yii2-maintenance-mode

Сообщение maleks »

Совет:
Если кто хочет видеть дебаг панель на странице Maintenance то указывайте в 'urls' => ['debug/default/toolbar', 'debug/default/view']
Yii2 universal module sceleton - for basic and advanced templates
Аватара пользователя
BrusSENS
Сообщения: 565
Зарегистрирован: 2012.07.26, 06:51
Откуда: Новороссийск
Контактная информация:

Re: yii2-maintenance-mode

Сообщение BrusSENS »

maleks писал(а):Совет:
Если кто хочет видеть дебаг панель на странице Maintenance то указывайте в 'urls' => ['debug/default/toolbar', 'debug/default/view']
Спасибо, добавлю в документацию :)
Native Web - небольшой блог о веб разработке (временно на ремонте)
Режим обслуживания сайта для Yii 2.x.x
Аватара пользователя
BrusSENS
Сообщения: 565
Зарегистрирован: 2012.07.26, 06:51
Откуда: Новороссийск
Контактная информация:

Re: yii2-maintenance-mode

Сообщение BrusSENS »

Native Web - небольшой блог о веб разработке (временно на ремонте)
Режим обслуживания сайта для Yii 2.x.x
Аватара пользователя
BrusSENS
Сообщения: 565
Зарегистрирован: 2012.07.26, 06:51
Откуда: Новороссийск
Контактная информация:

Re: yii2-maintenance-mode

Сообщение BrusSENS »

Native Web - небольшой блог о веб разработке (временно на ремонте)
Режим обслуживания сайта для Yii 2.x.x
Аватара пользователя
Andres
Сообщения: 20
Зарегистрирован: 2014.05.03, 17:11

Re: yii2-maintenance-mode

Сообщение Andres »

Спасибо за расширение. Думал сам писать, а оказывается есть готовое. Есть мелкие пожелания.
1. Мне кажется удобнее если по умолчанию поставить

Код: Выделить всё

public $enabled = false;
Ведь включение все же редко нужно в том виде, как оно сейчас.
2. Хотелось бы расширить функционал. Сделать сообщения о закрытии сайта изменяемыми. Можно было бы хранить инфу в БД, где была бы возможность установки точного времени для Retry-After, сообщения пользователям и заголовка. Как вариант хранить эту инфу во временном файле .enabled
Возможно этот функционал не особо многим нужен. Просто у меня на проекте сайт закрывается для пользователей при разных событиях (достаточно часто, раз в 2-3 дня, минут на 15-40) и хотелось бы до них доносить эту инфу, а Retry-After использовать не только для роботов, а сообщать юзерам примерное время до открытия.
Аватара пользователя
BrusSENS
Сообщения: 565
Зарегистрирован: 2012.07.26, 06:51
Откуда: Новороссийск
Контактная информация:

Re: yii2-maintenance-mode

Сообщение BrusSENS »

Andres писал(а): 2017.05.13, 22:19 1. Мне кажется удобнее если по умолчанию поставить

Код: Выделить всё

public $enabled = false;
Ведь включение все же редко нужно в том виде, как оно сейчас.
Тоже думал над этим. Надо будет в релизе исправить
Andres писал(а): 2017.05.13, 22:19 2. Хотелось бы расширить функционал. Сделать сообщения о закрытии сайта изменяемыми. Можно было бы хранить инфу в БД, где была бы возможность установки точного времени для Retry-After, сообщения пользователям и заголовка. Как вариант хранить эту инфу во временном файле .enabled
Ну идея в принципе интересная. Думаю лучше реализовать это всё в Json, и в нём же хранить, а то заводить отдельную таблицу на такую мелочь не лучшая идея, имхо. Посему можно написать такой функционал для следующего релиза.
Andres писал(а): 2017.05.13, 22:19 Возможно этот функционал не особо многим нужен.
Ну всё таки расширение хочется сделать более универсальным, подходящим для различных случаев. Поэтому идеи услышал - в следующем релизе стоит ожидать.
Native Web - небольшой блог о веб разработке (временно на ремонте)
Режим обслуживания сайта для Yii 2.x.x
Аватара пользователя
BrusSENS
Сообщения: 565
Зарегистрирован: 2012.07.26, 06:51
Откуда: Новороссийск
Контактная информация:

Re: yii2-maintenance-mode

Сообщение BrusSENS »

Native Web - небольшой блог о веб разработке (временно на ремонте)
Режим обслуживания сайта для Yii 2.x.x
Аватара пользователя
BrusSENS
Сообщения: 565
Зарегистрирован: 2012.07.26, 06:51
Откуда: Новороссийск
Контактная информация:

Re: yii2-maintenance-mode

Сообщение BrusSENS »

Друзья, заметил, что расширение всё ещё используют и планирую поэтому выпустить новую версию. Master на гитхабе уже обновлён.

Код полностью изменён, теперь все объекты настраиваются через DI.
Таким образом удалось реализовать систему фильтров. Фильтры можно содавать свои со своей логикой.
Так же сам режим обслуживания был разделён на 2 части. На сам Maintenance объект и State объект, который можно так же реализовать свой, реализовав интерфейс StateInterface, например для хранения статуса в БД, что бывает нужно в некоторых проектах.

Что думаете?
Native Web - небольшой блог о веб разработке (временно на ремонте)
Режим обслуживания сайта для Yii 2.x.x
Ответить