Вышел phpBBex 1.8.0! Улучшенная репутация и автоочистка логов

Список разделов phpBBex 1.x (поддерживается) Новости 1.x

Описание: Новости проекта phpBBex 1.x. Поддерживаются PHP 5.4+, 7.0+ и 8.0+.

  • 22

Сообщение #1 VEG » 04.07.2014, 21:05

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

Скачать: phpbbex_v1.8.0.7z (1.6 MB, лицензия: GPL).

Требования:
  • PHP не ниже 5.2.3 с поддержкой Unicode в регулярных выражениях
  • MySQL не ниже 5.0.3

Что нового?

Опциональное отображение поставивших оценки пользователей

show-reputation-marks.png
show-reputation-marks.png (6.91 КБ) Просмотров: 178996


Теперь при желании администратор может включить отображение списка поставивших оценки пользователей. Это также поможет вычислить пользователей, занимающихся «накрутками» себе или кому-то. По умолчанию этот список выводится в подсказке к блоку с итоговой оценкой. Но в шаблон передаются все необходимые данные для того, чтобы можно было вывести этот список в любом другом виде. Если вы знаете HTML, изменить вывод вы можете в шаблоне viewtopic_body.html.

Массовое удаление оценок, выставленных пользователем

reputation-mass-delete.png
reputation-mass-delete.png (5.59 КБ) Просмотров: 178996


Если какой-то пользователь был сильно огорчён, и старательно поставил минус всем сообщениям, до которых смог дотянуться — теперь это не проблема. Функция массового удаления выставленных оценок позволит быстро исправить ситуацию. Можно указать период времени для удаления оценок, а также тип оценок. Хорошие оценки ведь можно и оставить, неправда ли? :) Впрочем, если пользователь наставил себе «плюсиков» с других учётных записей — эти оценки будут автоматически удалены при удалении учётных записей «виртуалов».

Синхронизация оценок

sync.png
sync.png (7.06 КБ) Просмотров: 178996


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

Автоматическая очистка логов

keep-logs.png
keep-logs.png (5.84 КБ) Просмотров: 178996


После введения логгирования всех попыток регистрации возникла проблема «разбухания» таблиц логов: боты пытаются регистрироваться так часто, что количество записей об этом быстро переходит на десятки тысяч. Смысла хранить так много подобной информации, конечно же, нет, поэтому теперь в настойках можно указать, как долго хранить разные типы логов. Система будет периодически запускать автоматическую очистку логов от устаревших записей, в среднем при каждой 25-ой записи в лог (для каждого типа логов раздельно).

Оптимизация

  • При просмотре тем не выполняется лишний запрос к БД при выключенной системе репутации.
  • Значительная оптимизация пересчёта счётчиков тем (добавлен необходимый индекс).
  • Оптимизация вывода диалогов splash (о новом личном сообщении).
  • Удалён CSS код поддержки IE6 и IE7 (уменьшение количества предупреждений в современных браузерах, немного меньший объём CSS).
  • Теперь файл tweaks.css пуст и может использоваться пользователями для добавления собственных CSS правил без вмешательства в остальные файлы.

Исправления ошибок и недочётов

  • Первое закреплённое сообщение корректно отображается на первой странице при обратном порядке сортировки сообщений в теме.
  • Склейка сообщений не происходит, если новое сообщение и предыдущее в сумме превышают допустимый лимит по количеству символов в сообщении.
  • В уведомлениях была исправлена терминология на принятую в phpBBex («форум» вместо «конференция» и т.д.)
  • В выпадающих списках с выбором количества дней в админке исправлена ошибка, когда после выбора «Все дни» этот пункт не отображался при следующем просмотре страницы с настройками.
  • BBCode [url] теперь поддерживает протокол steam.
  • Добавлена валидация browser_id (на случай, если пользователь вручную запишет в cookies некорректное значение).
  • Для блока, выводящего вложенные изображения, задана максимальная ширина, чтобы он не вылазил за пределы отведённого места.
  • Улучшена совместимость с модами, перехватывающими вывод шаблонизатора.
  • Администратор может работать со всеми форумами в ACP даже если у него нет прав модератора.

Другое

  • Код встроенного STK обновлён до версии 1.0.7-PL1.
  • jQuery 2.1.1 (1.11.1 для IE8) и MediaElement JS 1.14.2.

Обновление c phpBBex 1.7.1 до 1.8.0

Если у вас более ранняя версия, сперва обязательно выполните инструкцию по обновлению до phpBBex 1.7.1. После этого выполните следующие инструкции.

  1. Сделайте резервную копию вашего сайта
  2. Замените все файлы (кроме config.php!) предыдущей версии phpBBex (или используйте Mercurial для автоматического сохранения ваших модов).
  3. На данном этапе у вас должна быть база со схемой phpBBex 1.7.1. Сейчас выполните (один раз!) следующий SQL скрипт в вашей базе (при помощи PhpMyAdmin в панели вашего хостинга или другого подобного инструмента):
    Код: Выделить всё
    ALTER TABLE phpbb_topics ADD INDEX topic_poster(topic_poster);
    REPLACE INTO phpbb_config (config_name, config_value) VALUES ('display_raters', '0');
    REPLACE INTO phpbb_config (config_name, config_value) VALUES ('keep_admin_logs_days', '365');
    REPLACE INTO phpbb_config (config_name, config_value) VALUES ('keep_mod_logs_days', '365');
    REPLACE INTO phpbb_config (config_name, config_value) VALUES ('keep_critical_logs_days', '365');
    REPLACE INTO phpbb_config (config_name, config_value) VALUES ('keep_user_logs_days', '365');
    REPLACE INTO phpbb_config (config_name, config_value) VALUES ('keep_register_logs_days', '14');
    REPLACE INTO phpbb_config (config_name, config_value) VALUES ('phpbbex_version', '1.8.0');
  4. Не забудьте сбросить кэш в админке (на главной), обновить шаблоны, стили и наборы изображений.
  5. Зайдите в Админка » Система » Управление модулями » Администраторский раздел » Обслуживание » Логи, добавьте модуль «Настройки логов» (находится в группе «Управление форумом»), после чего не забудьте включить этот модуль.

Переезд исходных кодов на Bitbucket

С самого появления phpBBex его исходный код находился на сервисе Google Code. Однако, к сожалению, Google давно не развивает этот сервис, а недавно там и вовсе запретили создавать новые файлы в разделе Downloads. Хорошо, что они хотя бы оставили возможность скачивать старые файлы (для архивных целей). А для нас это отличный повод поменять хостинг исходных кодов на что-то более современное. Мы выбрали Bitbucket. Этот сервис позволяет создавать репозитории Mercurial или Git на выбор. Мы остаёмся на Mercrurial, поскольку он более приятен в использовании.

Адрес нового репозитория: https://bitbucket.org/vegalogic/phpbbex/
Команда для клонирования нового репозитория:
Код: Выделить всё
hg clone https://bitbucket.org/vegalogic/phpbbex

В репозитории была изменена мета-информация, поэтому если вы ранее получали исходные коды phpBBex из репозитория на Google Code, просто указать новый родительский репозиторий не выйдет. Следуйте этой инструкции:

  1. Загрузите все доступные на Google Code изменения в ваш репозиторий, выполнив следующие команды:
    Код: Выделить всё
    hg pull -r v1.8.0
    hg update -r v1.8.0
  2. Удалите в вашем репозитории (или переместите куда-нибудь на всякий случай) каталог .hg и файл .hgtags.
  3. В любом другом каталоге клонируйте новый репозиторий до версии 1.8.0 командой:
    Код: Выделить всё
    hg clone -r v1.8.0 https://bitbucket.org/vegalogic/phpbbex
  4. В появившемся каталоге phpbbex возьмите каталог .hg и файл .hgtags, и скопируйте их в каталог с вашим форумом.

Готово. Теперь ваш репозиторий привязан к новому репозиторию phpBBex на Bitbucket.

Смотрите также


Оставайтесь с нами — у нас всегда много приятных мелочей! :)
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1661
С нами: 12 лет 1 месяц


Сообщение #141 VEG » 07.09.2014, 13:23

Sferg, а вы заходите через тот же интернет, что с домашнего компьютера, или через интернет мобильного оператора? Может быть просто по каким-то причинам сайт недоступен через вашего мобильного оператора? (надо бы разобраться)
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1661
С нами: 12 лет 1 месяц

Сообщение #142 Sferg » 07.09.2014, 13:26

VEG, интернет тот же. Использую самосборный PC-роутер с точкой доступа Wi-Fi. Домашний ПК, планшет и телефон подключаются к одной и той же точке доступа и получают один и тот же интернет.
Sferg
Репутация: 12
С нами: 10 лет 11 месяцев

Сообщение #143 VEG » 07.09.2014, 13:30

Sferg, очень странно... А какой-нибудь утилитой пропинговать phpbbex.com можете? Например, https://play.google.com/store/apps/details?id=com.ulfdittmer.android.ping (первое что нашлось на маркете).
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1661
С нами: 12 лет 1 месяц

Сообщение #144 Sferg » 07.09.2014, 13:40

VEG, без проблем.

Ping phpbbex.com
127.0.0.1
ICMP, пакеты по 56(84) байт.

Ответ от localhost
127.0.0.1
Номер 1, размер 64 байт, ttl 64, 0 ms.

Ответ от localhost
127.0.0.1
Номер 2, размер 64 байт, ttl 64, 0 ms.

Ответ от localhost
127.0.0.1
Номер 3, размер 64 байт, ttl 64, 0 ms.

Статистика:
3 передано, 3 получено, 0% потерь, время 2010 ms

Время:
Min 0,2 \ avg 0,2 \ max 0,2 \ mdev 0 ms

Бред какой-то. Причём тут localhost и 127.0.0.1? Пингую любой другой сайт - возвращается корректный IP.

Больше понравилась вот эта: https://play.google.com/store/apps/details?id=ua.com.streamsoft.pingtools
Sferg
Репутация: 12
С нами: 10 лет 11 месяцев

Сообщение #145 Sumanai » 07.09.2014, 13:54

Sferg:Причём тут localhost и 127.0.0.1?

Это меня натолкнуло на мысль, я понял причину :smile: Дело в блокировщике рекламы, типа AdAway, которые добавляют в файл hosts записи
Код: Выделить всё
127.0.0.1 www.phpbbex.com
127.0.0.1 phpbbex.com
Почему phpbbex.com стал сайтом с рекламой- отдельный вопрос. Сейчас посмотрю, какой именно источник добавляет эту запись.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 4 месяца

Сообщение #146 Sferg » 07.09.2014, 13:58

Sumanai, да, AdAway у меня установлен... Но вопрос: почему phpbbex.com оказался в чёрном списке - самому непонятен. По вашему сайту и не скажешь, что он есть злостный рассадник рекламы. :wink:

Значит, всё-таки косяк на моей стороне. В таком случае, извините за недоразумение.

С уважением, Геннадий.
Sferg
Репутация: 12
С нами: 10 лет 11 месяцев

Сообщение #147 Sumanai » 07.09.2014, 13:59

Вот собственно прямо в первом:
http://hosts-file.net/.\ad_servers.txt
Может и с остальных есть.
Думаю VEGу нужно связаться с ними для разъяснения ситуации.

Добавлено спустя 17 секунд:
Sferg:Значит, всё-таки косяк на моей стороне.

Косяк у них, раз добавили этот сайт.

Добавлено спустя 2 минуты 47 секунд:
Sumanai:Может и с остальных есть.

В остальных не нашёл, и то радует. Достаточно отключить источник с адресом http://hosts-file.net из списка AdAway.
Либо добавить phpbbex.com в белый список.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 4 месяца

Сообщение #148 VEG » 07.09.2014, 14:06

Sumanai, они видимо особо не разбирались и из-за bbmedia.js добавили весь хост в чёрный список.

Добавлено спустя 1 минуту 56 секунд:
Вообще я иногда поражаюсь безответственности, с которой составляются списки блокировки для программ типа AdBlock. У AdBlock Plus для Firefox под 20 миллионов пользователей — а списки дефолтные лично у меня уже много раз вызывали проблемы на сайтах, причём дело было именно в низкосортных правилах для блокировки.
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1661
С нами: 12 лет 1 месяц

Сообщение #149 Sumanai » 07.09.2014, 14:08

Тогда бы уж добавили в списки http://phpbb.com/ за ссылку внизу кучи форумов, чтобы быть последовательными.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 4 месяца

Сообщение #150 Sferg » 07.09.2014, 14:12

VEG, Sumanai, отлично! Добавил в белый список ваш сайт и теперь всё открывается. :smile:

Да, тоже заметил адрес в http://hosts-file.net/ad_servers.asp. Хотел было отписаться, но вы меня опередили.
Sferg
Репутация: 12
С нами: 10 лет 11 месяцев

Сообщение #151 VEG » 07.09.2014, 14:17

Написал в их форму contact us вопрос, почему они добавили phpbbex.com в свой блэклист, посмотрим что они ответят.

Добавлено спустя 5 минут 36 секунд:
Изображение

Уже скоро год как мы в этом чёрном списке. Якобы рекламу распространяем.
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1661
С нами: 12 лет 1 месяц

Сообщение #152 Sferg » 07.09.2014, 22:22

Господа, просветите, пожалуйста: как на форуме правильно XCache задействовать? Достаточно только в ../forum/config.php прописать:

Код: Выделить всё
$acm_type = 'xcache';

или же что-то ещё для этого нужно?
Sferg
Репутация: 12
С нами: 10 лет 11 месяцев

Сообщение #153 Sumanai » 07.09.2014, 22:42

По идее достаточно. Ну ещё и кеш не забудьте почистить.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 4 месяца

Сообщение #154 Sferg » 07.09.2014, 22:46

Sumanai, ну, это само собой. Просто темка на буржуйском форуме заставила призадуматься.
Sferg
Репутация: 12
С нами: 10 лет 11 месяцев

Сообщение #155 Sferg » 11.09.2014, 15:16

Здравствуйте, господа. Извиняюсь за 2 сообщения подряд (удалить\отредактировать предыдущее сообщение не представляется возможным). Уже довольно долгое время пытаюсь "тюнинговать" свой домашний веб-сервер - чтобы снизить время генерации страниц форума. На данный момент, при использовании XCache, у меня следующие показатели:

Время генерации главной страницы форума: 0.032s - 0.039s;
Время генерации главной страницы админки: 0.100s - 0.107s;
Время генерации темы с коротким сообщением (391 б): 0.058s - 0.062s;
Время генерации темы с длинным сообщением (500 кб*): 0.205s - 0.213s.

* Значение указано намеренно для эксперимента. Чем больше сообщение - тем выше время генерации.

В связи с этим, хотелось бы у вас поинтересоваться, уважаемые знатоки: каким образом можно свести время генерации страниц к минимуму (кроме как не писать чрезмерно длинные сообщения)?
Sferg
Репутация: 12
С нами: 10 лет 11 месяцев

Сообщение #156 Sumanai » 11.09.2014, 15:45

Sferg:Уже довольно долгое время пытаюсь "тюнинговать" свой домашний веб-сервер

На чём он? Версии софта, ОС?
На PHP 5.5 со встроенным опкешером у меня удавалось добиться 0.008s для главной и 0.018s для темы с короткими сообщениями. Но форум пустой, поэтому всё так и хорошо выглядит.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 4 месяца

Сообщение #157 Sferg » 11.09.2014, 15:57

Sumanai:На чём он? Версии софта, ОС?
Да, конечно, извините. Железо у меня следующее:

- CPU: Intel Atom N2800 (1.86 GHz, 2 ядра + Hyper-Threading);
- RAM: 4 Gb DDR3-1066;
- HDD: 640 Gb, SATA2 (ещё подключен SSD 120 Gb, но не используется - только ОС установлена).

В качестве ОС используется Debian Wheezy v7.0, где установлены следующие компоненты:

- Nginx v1.6.0;
- PHP-FPM v5.4.4-14+deb7u14 + XCache + Zend Debugger;
- MySQL v5.5.39-MariaDB (использую по умолчанию тип таблиц InnoDB).

P.S. Размер БД - 7 Mb.
Sferg
Репутация: 12
С нами: 10 лет 11 месяцев

Сообщение #158 Sumanai » 11.09.2014, 16:36

Sferg:PHP-FPM v5.4.4-14+deb7u14

Советую подключить репозиторий с PHP 5.5 и использовать встроенный опкешер.

Sferg:Zend Debugger;

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

Добавлено спустя 1 минуту 25 секунд:
Sferg:P.S. Размер БД - 7 Mb.

Слишком мало, чтобы сказать более подробно. Я встречался со случаями, когда база данных по разному себя вела на пустой тестовой и заполненной боевой базе.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 4 месяца

Сообщение #159 Sferg » 11.09.2014, 16:56

Sumanai:Советую подключить репозиторий с PHP 5.5 и использовать встроенный опкешер.

5.5 стабильно работает? Движок phpBBex поддерживает работу с механизмом Opcache? Какие-либо явные баги имеются? Была мысль попробовать 5.5, да всё как-то откладывалось...

Sumanai:Советую использовать дебаг только на тестовой конфигурации

Спасибо за совет. Отключил. Показатели стали следующими:

Время генерации главной страницы форума: 0.028s - 0.032s;
Время генерации главной страницы админки: 0.092s - 0.102s;
Время генерации темы с коротким сообщением (391 б): 0.047s - 0.052s;
Время генерации темы с длинным сообщением (500 кб*): не пробовал, но полагаю, что будет где-то 0.192s-0.201s

Sumanai:Слишком мало, чтобы сказать более подробно. Я встречался со случаями, когда база данных по разному себя вела на пустой тестовой и заполненной боевой базе.

Сам не пойму. Вроде бы 7 Mb могло бы вполне и в оперативке закешироваться... Форум не пустой. Почти 2 года существует (136 тем, 396 сообщений).
Sferg
Репутация: 12
С нами: 10 лет 11 месяцев

  • 1

Сообщение #160 Sumanai » 11.09.2014, 17:15

Sferg:5.5 стабильно работает?

Уже 5.6 вышел.
phpBBex стабильно работает на 5.5 с версии 1.7.1. На 5.6 ещё не пробовали.

Sferg:Вроде бы 7 Mb

Ах, да, забыл сказать, что с MariaDB могут быть проблемы с определением размера БД из админки. Посмотрите при помощи сторонних инструментов, которые корректно работают с этой БД.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 4 месяца

Пред.След.

Вернуться в Новости 1.x



cron