Русское сообщество fluxbb

Быстрый лёгкий надёжный форумный движок

Вы не вошли.

Объявление

Вы можете внести свой вклад в содержание сайта. Жертвователи попадут в почетную группу "Спонсоры". Поддержать сайт.

#1126 2016-03-02 19:37:50

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Сборка FluxBB 1.5.xx от Visman'а

@lakki, на хабре отписка без регистрации и без проверки smile А на тостере у них точна такая же реализация, но отписаться невозможно.
@artoodetoo, так сделано в оригинальном движке. Сделать конечно можно без необходимости регистрировать, но вводить туда капчу лень.

Offline

#1127 2016-03-12 01:34:23

ugadaykin
Участник
Зарегистрирован: 2016-03-12
Сообщений: 20

Re: Сборка FluxBB 1.5.xx от Visman'а

Доброй ночи!
Необычная ошибка при установке форума
Скачал его сегодня отсюда
github_com/MioVisman/FluxBB_by_Visman/

Загрузил по ФТП разархивированные файлы, захожу на site_ru/fluxbb/
меня редиректит на site_ru/fluxbb/install.php
ввожу данные (имя пользователя БД user_ugaday) и получаю такую ошибку
Error: Unable to connect to MySQL server. MySQL reported: Access denied for user 'user_ugada'@'localhost' (using password: YES).
Обратите внимание, в сообщении об ошибке имя пользователя без последней буквы!

В этой папке github.com/MioVisman/FluxBB_by_Visman/tree/master/include файла config.php нет (((
А к этому файлу идет обращение из 39 строки файла site.ru/fluxbb/include/common.php

При этом данные доступа к БД правильные.

С уважением.

Редактировался ugadaykin (2016-03-12 01:35:23)

Offline

#1128 2016-03-12 06:42:15

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Сборка FluxBB 1.5.xx от Visman'а

@ugadaykin, да, интересный глюк.
Файл include/config.php выглядит так:

<?php

$db_type = 'mysqli'; // тип базы
$db_host = 'localhost'; // сервер базы даннных
$db_name = 'base'; // имя базы данных на сервере
$db_username = 'root'; // имя пользователя для доступа к базе
$db_password = 'root'; // пароль пользователя для доступа к базе
$db_prefix = 'f_'; // префикс для имен таблиц базы форума
$p_connect = false; // постоянный коннект к базе или нет

$cookie_name = 'pun_cookie_abcdef'; // имя куки пользователей в браузере. индивидуально для каждого форума
$cookie_domain = '';
$cookie_path = '/';
$cookie_secure = 0;
$cookie_seed = 'abcdef123456789'; // непередаваемый набор букво-цифр для шифрования кук

$salt1 = 'abcdef123456789'; // непередаваемый набор букво-цифр для шифрования паролей

define('PUN', 1);

define('PUN_DEBUG', 1);
//define('PUN_SHOW_QUERIES', 1);
define('PUN_MAX_POSTSIZE', 65535);
//define('FORUM_EOL', "\r\n"); // possible values can be PHP_EOL, "\r\n", "\n" or "\r"
//define('FORUM_UA_OFF', 1);
define('FORUM_AJAX_JQUERY', '//ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js');

Offline

#1129 2016-03-12 08:15:07

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Сборка FluxBB 1.5.xx от Visman'а

А по поводу пропажи буквы. Может там не латинская y стоит, а кириллическая у?

Offline

#1130 2016-03-12 11:27:10

ugadaykin
Участник
Зарегистрирован: 2016-03-12
Сообщений: 20

Re: Сборка FluxBB 1.5.xx от Visman'а

VIsman, спасибо за config.php, заработало. А буква точно английска у меня)))
Я так думаю, что может быть в файле install.php когда кнопку Инсталл жмешь, может из поля ввода не все буквы передаются, или может есть ограничение на количество символов в имени пользователя БД?

Поставил на cache and img/avatars chmod 777 - не ругается (читал же ранее про fluxbb.org/docs/v1.5/installing да с утра не вспомнил))).

Но другая ошибка возникла
захожу на site_ru_fluxbb
меня редиректит на site_ru_fluxbb_db_update.php
И пишет
Version mismatch. The database 'ИМЯ БАЗЫ ДАННЫХ' doesn't seem to be running a FluxBB database schema supported by this update script.

гуглю fluxbb Version mismatch. The database doesn't seem to be running a FluxBB database schema supported by this update script

Нашел какой-то патч, но как его применить?
fluxbb_org/development/core/tickets/902/patch/qk2oo4z20.patch

Редактировался ugadaykin (2016-03-12 11:39:54)

Offline

#1131 2016-03-12 11:51:20

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Сборка FluxBB 1.5.xx от Visman'а

Я так думаю, что может быть в файле install.php когда кнопку Инсталл жмешь, может из поля ввода не все буквы передаются, или может есть ограничение на количество символов в имени пользователя БД?

Ограничения нет. Я использовал имена пользователей длиннее без проблем.

Но другая ошибка возникла
захожу на site_ru_fluxbb
меня редиректит на site_ru_fluxbb_db_update.php
И пишет
Version mismatch. The database 'ИМЯ БАЗЫ ДАННЫХ' doesn't seem to be running a FluxBB database schema supported by this update script.

У вас база не заполнена таблицами, так как в install.php была ошибка с подключением при создании структуры базы.

Нужно разбираться, почему ваш сервер обрезает последнюю букву в имени пользователя базы. И устанавливать fluxbb стандартным способом через install.php.

Offline

#1132 2016-03-12 12:09:29

ugadaykin
Участник
Зарегистрирован: 2016-03-12
Сообщений: 20

Re: Сборка FluxBB 1.5.xx от Visman'а

Пробую ставить стандартным способом через install.
Удалил таблицы, которые создались при установке и удалил файлы движка по ФТП.
Загрузил по FTP заново, Почистил в браузере кеш.
Захожу на site_ru_fluxbb
пишет
File: /home/ВЫРЕЗАНО/data/www/site.ru/fluxbb/include/cache.php
Line: 22
FluxBB reported: Unable to fetch forum config
Database reported: Table 'ИМЯ ПОЛЬЗОВАТЕЛЯ БД.config' doesn't exist (Errno: 1146)


Я понимаю, что ему нужна эта таблица, а ее нет. Однако я ж с нуля ставлю(((
Висман, может быть скинете сюда готовый файл, буду благодарен)))

Редактировался ugadaykin (2016-03-12 12:12:37)

Offline

#1133 2016-03-12 12:20:48

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Сборка FluxBB 1.5.xx от Visman'а

@ugadaykin, если вы все удалили и залили по новой движок на сайт, то такой ошибки просто не может быть на стадии установки. При выполнении install.php нет вызова функции generate_config_cache().

Полностью удалите все файлы из каталога форума. Удалите базу форума.
Создайте новую базу форума. Скопируйте файлы движка в каталог форума и запустите install.php.

Offline

#1134 2016-03-12 12:32:00

ugadaykin
Участник
Зарегистрирован: 2016-03-12
Сообщений: 20

Re: Сборка FluxBB 1.5.xx от Visman'а

Visman пишет:

@ugadaykin, если вы все удалили и залили по новой движок на сайт, то такой ошибки просто не может быть на стадии установки. При выполнении install.php нет вызова функции generate_config_cache().

Полностью удалите все файлы из каталога форума. Удалите базу форума.
Создайте новую базу форума. Скопируйте файлы движка в каталог форума и запустите install.php.

Так я это и сделал. Зашел в phpmyadmin и все удалил. У меня возможно только создание одной БД, на моем тарифном плане.
Я не могу удалить БД (поскольку основной сайт также ее использует), поэтому удалил только таблицы, созданные при установке.

Редактировался ugadaykin (2016-03-12 12:32:41)

Offline

#1135 2016-03-12 12:38:36

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Сборка FluxBB 1.5.xx от Visman'а

Еще раз скажу:

@ugadaykin, если вы все удалили и залили по новой движок на сайт, то такой ошибки просто не может быть на стадии установки. При выполнении install.php нет вызова функции generate_config_cache().

Пока install.php не отработает без ошибок, форум нормально установлен не будет.

Если есть доступ к логам ошибок сервера, то покажите ошибки там прописанные.

Offline

#1136 2016-03-12 12:46:46

ugadaykin
Участник
Зарегистрирован: 2016-03-12
Сообщений: 20

Re: Сборка FluxBB 1.5.xx от Visman'а

Посмотрел логи ошибок, нет ничего связанного с форумом.
Висман, я позже отвечу, попробую еще разок переставить. Спасибо за поддержку. Отпишусь

Offline

#1137 2016-03-12 16:28:25

ugadaykin
Участник
Зарегистрирован: 2016-03-12
Сообщений: 20

Re: Сборка FluxBB 1.5.xx от Visman'а

Чедуса. Итак, удалил таблицы и site.ru/fluxbb/include/common.php
Захожу на install.php
Install language - English
Database type - MySQL Improve
Database server hostname - localhost (при этом в моих скриптах сайта localhost работает, нет нужды юзать 127.0.0.1)
Database name, username, password - верные данные для доступа к БД
Table prefix - flux_
Administration setup - username, password, salt, e-mail - все заполнил
Board title - тестовый форум
Board Description - <p><span>тестим</span></p>
The URL (without trailing slash) of your FluxBB forum - site.ru/fluxbb
Default language - Russian
Default style - Air

Жму Install
Выдало
FluxBB has been installed. To finalize the installation please follow the instructions below.
FluxBB has been fully installed! You may now go to the forum index.

Вроде бы все хорошо, но логинюсь site.ru/fluxbb/login.php
выдает
File: /home/user/data/www/site.ru/fluxbb/addons/security_for_login.php
Line: 99

FluxBB reported: Unable to get sec_of_login data

Database reported: Table 'ИМЯ.flux_sec_of_login' doesn't exist (Errno: 1146) (не создало таблицу?)


Значит какая-то проблема в расширении security_for_login

пробовал в config.php делать
define('PUN_TURN_OFF_MAINT', 1);
не помогло

Висман, чудеса))) Теперь при обращении к логин.пхп - нормально зашел


Теперь другая проблема
site.ru/fluxbb/admin_/
выдает 404 error
И такой папки реально нет тут github.com/MioVisman/FluxBB_by_Visman/

Поставил уже оригинальный Флакс fluxbb.org/download/releases/1.5.9/fluxbb-1.5.9.zip
Захожу на site.ru/fluxbb-1.5.9/admin_index.php
и редиректит на site.ru/fluxbb-1.5.9/admin_/ и по новой 404 error
Посмотрел, и в оригинальной версии Флакса такой папки нет
Почему-то редиректит на admin_  ?

Редактировался ugadaykin (2016-03-12 17:27:16)

Offline

#1138 2016-03-12 17:41:19

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Сборка FluxBB 1.5.xx от Visman'а

@ugadaykin, у вас проблема видимо из-за движка сайта который перехватывает обращения к форуму через .htaccess (если сервер апач). Такого вида ссылок site.ru/fluxbb/admin_/ нет ни в моей сборке, ни в оригинальном движке.

site.ru/fluxbb/include/common.php

Если вы его действительно удалили, движок вообще не смог бы работать. config.php нужно удалять.

Вроде бы все хорошо, но логинюсь site.ru/fluxbb/login.php
выдает
File: /home/user/data/www/site.ru/fluxbb/addons/security_for_login.php
Line: 99

FluxBB reported: Unable to get sec_of_login data

Database reported: Table 'ИМЯ.flux_sec_of_login' doesn't exist (Errno: 1146) (не создало таблицу?)

Значит какая-то проблема в расширении security_for_login

Расширение создает таблицу при первом срабатывании. Если оно не может этого сделать, значит юзер под которым идет обращение к базе не имеет прав на создание/удаление таблиц в базе.

Offline

#1139 2016-03-12 17:43:33

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Сборка FluxBB 1.5.xx от Visman'а

Кроме удаления таблиц и config.php нужно было папку cache от php файлов чистить. Если они там остались от старой установки, то отсюда могут расти ноги у проблемы текущей.

Offline

#1140 2016-03-12 21:26:50

ugadaykin
Участник
Зарегистрирован: 2016-03-12
Сообщений: 20

Re: Сборка FluxBB 1.5.xx от Visman'а

Visman пишет:

Кроме удаления таблиц и config.php нужно было папку cache от php файлов чистить. Если они там остались от старой установки, то отсюда могут расти ноги у проблемы текущей.

Почистил cache - Не помогло.
Значит реально проблема в .htaccess (я так вначале и подумал). Да, веб-сервер Апач.

Погуглиг, проблема решена добавлением файла .htaccess в папку fluxbb
его содержимое RewriteEngine off

Редактировался ugadaykin (2016-03-12 21:42:56)

Offline

#1141 2016-03-13 02:49:00

ugadaykin
Участник
Зарегистрирован: 2016-03-12
Сообщений: 20

Re: Сборка FluxBB 1.5.xx от Visman'а

Вот чудеса.
Ставлю движок заново - уже в другую папку - теперь все по настоящему - в папку forum
и возникла проблема - редирект www . site.ru/forum или с www . site.ru/forum/
на site.ru/forum/

проблема решена закомментированием всех строк в .htaccess в папке fluxbb (что равносильно его удалению),
а также в корневой .htaccess добавлены
#for forum
Options +FollowSymlinks
RewriteBase /forum/
RewriteCond %{HTTP_HOST} ^www . site.ru/forum$ [NC]
RewriteRule ^(.*)$ хэ тэ тэ пэ site.ru/forum1$1 [R=301,L]

по мотивам fluxbb.qb7.ru/forum/viewtopic.php?id=3837
слетает логин при появлении www в адресе

Редактировался ugadaykin (2016-03-13 02:50:34)

Offline

#1142 2016-03-13 12:09:42

ugadaykin
Участник
Зарегистрирован: 2016-03-12
Сообщений: 20

Re: Сборка FluxBB 1.5.xx от Visman'а

Висман, доброе утро! Начал тестировать форум в боевом режиме.
Как сделать так, чтобы имя пользователя состояло только из латинских букв, цифр?
Поискал в настройках - не нашел

И еще такой вопрос - регистрация только с белого списка почтовых доменов. Как такое сделать?
fluxbb.qb7.ru/forum/viewtopic.php?pid=24522#p24522

Редактировался ugadaykin (2016-03-13 13:42:51)

Offline

#1143 2016-03-13 14:54:11

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Сборка FluxBB 1.5.xx от Visman'а

Как сделать так, чтобы имя пользователя состояло только из латинских букв, цифр?
Поискал в настройках - не нашел

В настройках этого нет. Нужно заменить строку https://github.com/MioVisman/FluxBB_by_ … s.php#L502
на

	else if (!preg_match('%^[a-z\d]+$%ui', $username)) // строгая проверка имени пользователя - Visman

регистрация только с белого списка почтовых доменов. Как такое сделать?

Вставить дополнительный код в функцию is_valid_email() перед строкой https://github.com/MioVisman/FluxBB_by_ … il.php#L27

if (!preg_match('%@(mail\.ru|gmail\.com|yandex\.ru)$%', $email))
    return false;

Offline

#1144 2016-03-19 11:58:53

ugadaykin
Участник
Зарегистрирован: 2016-03-12
Сообщений: 20

Re: Сборка FluxBB 1.5.xx от Visman'а

Висман, выкладываю решение про проверку имени и почты с клиентской стороны.
Думаю, пригодится пользователям движка, да и вообще посетителям форума для расширения кругозора.
Только совместными усилиями и обменом опытом мы можем добавлять новые возможности во Флакс!
Движок хорош, но нет предела совершенству.

Проверка на клиенской стороне - чтобы сэкономить время|нагрузку на сервер и посетителя.
в файле forum/register.php изменено это (в input type добавлена реакция на клавиатуру onkeyup="validate_username(this.value)"
и также перед закрытием тега label добавлен тег strong, в котором посетителю будет дана информация, относительно правильности|неправильности имени пользователя):

было
<label class="required"><strong><?php echo $lang_common['Username'] ?> <span><?php echo $lang_common['Required'] ?></span></strong><br /><input type="text" name="req_user" value="<?php if (isset($_POST['req_user'])) echo pun_htmlspecialchars($_POST['req_user']); ?>" size="25" maxlength="25" /><br /></label>

стало
<label class="required"><strong><?php echo $lang_common['Username'] ?> <span><?php echo $lang_common['Required'] ?></span></strong><br /><input type="text" onkeyup="validate_username(this.value)" name="req_user" value="<?php if (isset($_POST['req_user'])) echo pun_htmlspecialchars($_POST['req_user']); ?>" size="25" maxlength="25" /><strong id="message_validate_username" ></strong>
<br /></label>

Добавляем JavaScript.
Тег label находится внутри <div class="infldset">. Сразу после div вставляем

<script>
function validate_username(val) {
//re — это регулярное выражение, а метод test() позволяет выяснить, подходит или нет val под это регулярное выражение. Если подходит, то в valid присваиватеся true, если нет — false. 

var re = /^[a-zA-Z0-9]+$/i;
var valid = re.test(val);
if (valid) {
	output = '   Имя пользователя введено верно';
	document.getElementById("message_validate_username").style.color = "green";
} else {
	output = '   Просьба использовать только латинские буквы, а также цифры';
	document.getElementById("message_validate_username").style.color = "red";
}
document.getElementById('message_validate_username').innerHTML = output;

}
</script>

Проверка email на клиенской стороне - чтобы сэкономить время|нагрузку на сервер и посетителя.
в файле forum/register.php изменено это (в input type добавлена реакция на клавиатуру onkeyup="validate_email(this.value)"
и также перед закрытием тега label добавлен тег strong, в котором посетителю будет дана информация, относительно правильности|неправильности имени пользователя).
Добавлено

function validate_email(val) {
if (val.indexOf("@") != -1) {
//если пользователь ввел @
	var mail_domains = ["mail.ru", "inbox.ru", "list.ru", "bk.ru", "rambler.ru", "gmail.com", "yandex.ru"];
	if (mail_domains.indexOf(val.split("@")[1]) != -1 ) {
	output1 = '   Все хорошо, почтовый домен в белом списке';
	document.getElementById("message_validate_email").style.color = "green";
} else {
	output1 = '   Допускается регистрация с использованием почтовых ящиков с mail.ru, inbox.ru, list.ru, bk.ru, rambler.ru, gmail.com, yandex.ru';
	document.getElementById("message_validate_email").style.color = "red";
}

}

document.getElementById('message_validate_email').innerHTML = output1;

}
</script>

Редактировался ugadaykin (2016-03-19 12:01:39)

Offline

#1145 2016-03-19 12:16:46

ugadaykin
Участник
Зарегистрирован: 2016-03-12
Сообщений: 20

Re: Сборка FluxBB 1.5.xx от Visman'а

Обратил внимание, что админка не дает указать почту вебмастера если в имени домена тире.

И еще: регистрирую тестового пользователя и на его почту приходит письмо. Вроде бы все хорошо, но маил.ру пишет
Мы не можем проверить подлинность отправителя. Рекомендуем вам быть внимательнее при совершении действий, указанных в письме.
И ссылку дает на https://help.mail.ru/mail-help/letters/receive/dmarc

Как мне сделать так, чтобы проверялась подлинность отправителя? Просто я с почтой дел не имел в части администрирования.
И как сделать так, чтобы можно получать и отправлять письма с [email protected] - что где нужно указать в админке форума? Я там указал IP-адрес SMTP сервера, имя admin и пароль от почтового ящика на моем сайте. Но у меня наименование сайта с тире, поэтому возникла вышеописанная проблема "админка не дает указать почту вебмастера если в имени домена тире."

ps Хостеру уже отписал тикет - как он ответит - я добавлю его ответ.

Редактировался ugadaykin (2016-03-19 12:41:14)

Offline

#1146 2016-03-19 14:56:19

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Сборка FluxBB 1.5.xx от Visman'а

выкладываю решение про проверку имени и почты с клиентской стороны.

На стороне сервера проверка все равно необходима, так как нельзя доверять пришедшим со стороны данным.

Как мне сделать так, чтобы проверялась подлинность отправителя?

Легче всего отправлять почту с почтового адреса на тех же mail.ru, google.com, yandex.ru и т.п.
Если нужно именно со своего домена слать письма так, чтобы они в спам не попадали, следует почитать это:
https://ru.wikipedia.org/wiki/DomainKey … ified_Mail
https://ru.wikipedia.org/wiki/Sender_Policy_Framework

https://habrahabr.ru/post/143951/
https://support.google.com/mail/answer/81126?hl=ru
https://yandex.ru/support/mail/spam/honest-mailers.xml

Offline

#1147 2016-03-20 13:22:11

ugadaykin
Участник
Зарегистрирован: 2016-03-12
Сообщений: 20

Re: Сборка FluxBB 1.5.xx от Visman'а

Почему-то админка форума не дает указать почтовый адрес админа и вебмастера - у меня он вида
[email protected]
А без тире "-" все хорошо

Редактировался ugadaykin (2016-03-20 13:23:34)

Offline

#1148 2016-03-20 15:34:29

Visman
Administrator
Из Сибирь
Зарегистрирован: 2009-06-08
Сообщений: 2,236
Сайт

Re: Сборка FluxBB 1.5.xx от Visman'а

@ugadaykin, проверил на тестовом форуме. Тире(минус) допускается в email. Сохранил адрес с тире без проблем. Возможно, вы применили код из сообщения https://fluxbb.qb7.ru/forum/viewtopic.p … 377#p29377, тогда в этот код нужно добавить свой домен как валидный.

Offline

#1149 2016-03-20 17:42:30

ugadaykin
Участник
Зарегистрирован: 2016-03-12
Сообщений: 20

Re: Сборка FluxBB 1.5.xx от Visman'а

Visman пишет:

@ugadaykin, проверил на тестовом форуме. Тире(минус) допускается в email. Сохранил адрес с тире без проблем. Возможно, вы применили код из сообщения https://fluxbb.qb7.ru/forum/viewtopic.p … 377#p29377, тогда в этот код нужно добавить свой домен как валидный.

спасибо помогло

Offline

#1150 2016-03-20 19:17:57

ugadaykin
Участник
Зарегистрирован: 2016-03-12
Сообщений: 20

Re: Сборка FluxBB 1.5.xx от Visman'а

Висман, а как сделать так чтобы новые пользователи могли регаться сразу - без часовой задержки (в админке форума не нашел).
Я понимаю это спамозащита - мне это нужно на чуток для внутренни нужд

Offline

Подвал доски

Под управлением FluxBB. Хостинг Hostens