ExBB Community » Файловый ExBB » Решение проблем » Не могу войти на форум.

Страниц (2): [1] 2 »
 

1. cooper - 14 февраля 2015 — 16:05 - перейти к сообщению
После переезда, не могу зайти на форум, пишет:
Цитата:
Вы ввели неверное/неактивное имя пользователя или неверный пароль!


А если запросить "забыли пароль?", то он не видит логина в поле, и пишет:
Цитата:
Не заполнено поле Имя пользователя!
2. cooper - 14 февраля 2015 — 22:20 - перейти к сообщению
Слава Богу, вспомнил про папку install и залез на форум, зарегистрировав нового админа. Есть файл из members 1.php - как по нему восстановить старого админа, а главное статистику профиля?
3. electron - 15 февраля 2015 — 05:08 - перейти к сообщению
cooper пишет:
После переезда, не могу зайти на форум

перенос форума должен выполняться в бинарном режиме. если это условие не выполнялось на форуме будут постоянные косяки.
+ после переезда нужно высставить права на запись для файлов и папок из ExBB FAQ , вопрос/ответ 3

cooper пишет:
Есть файл из members 1.php - как по нему восстановить старого админа, а главное статистику профиля?

залить его в папку members , в админке пересчитать пользаков и в форумах обновить статистику
4. cooper - 15 февраля 2015 — 08:51 - перейти к сообщению
electron пишет:
перенос форума должен выполняться в бинарном режиме. если это условие не выполнялось на форуме будут постоянные косяки.

С этим просто - FTP Voyager tools\transfer mode\binary

electron пишет:
после переезда нужно высставить права на запись для файлов и папок из ExBB FAQ , вопрос/ответ 3

Там к примеру сказано:"для папки data и всех файлов в ней"
В папке data есть вложенная папка access_log, нужно ли изменять в ней?


Тут таки да, если долго пользуешься форумом как потребитель, то после этого любые сбои в работе вызывают трудности.
С другой стороны, это говорит в пользу форума, - пару лет работал как часы.
5. electron - 15 февраля 2015 — 10:37 - перейти к сообщению
cooper пишет:
В папке data есть вложенная папка access_log, нужно ли изменять в ней?

папке data присваиваете права на запись, всем файлам в этой папке - права на запись, т.к. они являются как бы памятью форума и должны периодически обновляться. далее папке access_log - права на запись, всем файлам в папке access_log - права на запись... и тд и тп по списку...
6. cooper - 15 февраля 2015 — 17:05 - перейти к сообщению
electron пишет:
папке data присваиваете права на запись, всем файлам в этой папке - права на запись, т.к. они являются как бы памятью форума и должны периодически обновляться. далее папке access_log - права на запись, всем файлам в папке access_log - права на запись... и тд и тп по списку...


Еще небольшой вопрос - в указанных папках есть файлы:
index.html
.htaccess
Thumbs.db
.gif
.jpg
Как быть с ними - у них права доступа также менять на 777(755)?
7. cooper - 15 февраля 2015 — 18:57 - перейти к сообщению
После запары со сменой прав доступа, форум немного ожил, и некоторые пользователи могут уже заходить. Вот только ни одно поле ввода, не видит кириллицы, латиницу кушают а кириллицу не видят.
(язык по умолчанию руссиан, и кириллические ники разрешены)
Нельзя войти пользователям с кириллическими никами, нельзя написать пост кириллицей, а латиницей - пожалуйста.
Если кто знает где об этом написано, бросьте ссылку - пожалуйста.....
8. electron - 15 февраля 2015 — 18:59 - перейти к сообщению
Thumbs.db - удалить. это файл, который создала ваша операционная система в том компьютере, в котором вы делали бэкап. для форума он не нужен, читай "лишний".
права на запись - только для файлов с расширением .php , остальным - чтение


cooper пишет:
Нельзя войти пользователям с кириллическими никами, нельзя написать пост кириллицей, а латиницей - пожалуйста.
Если кто знает где об этом написано, бросьте ссылку - пожалуйста.....

сам сервер должен работать в кодировке win-1251 . если в админке хостинга нельзя выбрать кодировку сервера - заставьте его принудительно обрабатывать работу форума в нужной ВАМ кодировке. для этого в корневой .htaccess форума надо добавить строку

CODE:
AddDefaultCharset windows-1251
9. cooper - 15 февраля 2015 — 20:56 - перейти к сообщению
electron пишет:

сам сервер должен работать в кодировке win-1251 . если в админке хостинга нельзя выбрать кодировку сервера - заставьте его принудительно обрабатывать работу форума в нужной ВАМ кодировке. для этого в корневой .htaccess форума надо добавить строку
CODE:
AddDefaultCharset windows-1251


Сервер хостера работает в UTF-8, поэтому практически сразу:
В настройках домена прописал windows-1251
Строчку с кодировкой в .htaccess форума прописал.
При сбое кодировки хотя бы кракозябалы должны были бы писаться, а тут - ничего.
Пишет везде - "не заполнили поле"
Или в админке, просто не сохраняет записи на кириллице.
10. NordWest - 16 февраля 2015 — 00:29 - перейти к сообщению
Попробуйте проделать вот это - http://radius.maxdsl.ru/topic.ph...m=5&topic=12
11. cooper - 16 февраля 2015 — 13:00 - перейти к сообщению
Цитата:
Затем нужно решить проблему с функцией htmlspecialchars в которой нужно обязательно прописать кодировку cp1251 или будут проблемы с кириллицей.
Можно конечно жестко прописать, но вдруг когда поменять придется...
Короче открываем common.php ищем строку
CODE:
define('FM_PATH', dirname(dirname(__FILE__)) . '/');

после которой добавляем
CODE:
define("FM_ENCODING", "cp1251");

И в папке install в файлах index.php и update.php аналогично в начало добавляем
CODE:
define("FM_ENCODING", "cp1251");

После этого делаем поиск по всем файлам форума строки htmlspecialchars и если у функции задано не все три параметра приводим функцию к полному виду, например
CODE:
htmlspecialchars($v,ENT_QUOTES,FM_ENCODING)

(на месте первого параметра должно остаться то, что там было)
И не включаем модули "Хранение статистики чтения тем на сервере" и "Поиск тем и сообщений пользователя" т.к. они используют базу на SQLite2 а её поддержка с этой версии PHP была прекращена.


У меня файл common имеет вид:
CODE:
<?php
if (!defined('IN_EXBB')) die('Hack attempt!');
error_reporting (E_ALL);
#error_reporting (E_ERROR | E_PARSE);

if (!defined("PATH_SEPARATOR")) { define("PATH_SEPARATOR", getenv("COMSPEC")? ";" : ":"); }
ini_set("include_path", ini_get("include_path").PATH_SEPARATOR.dirname(__FILE__));


if (get_magic_quotes_runtime() === 1) set_magic_quotes_runtime(0);

define("FM_LOGDIR", "data/access_log/");
define("FM_ALLFORUMS", "data/allforums.php");
define("FM_ALLFORUMS_BAK", "data/allforums_bak.php");
define("FM_BADWORDS", "data/badwords.php");
define("FM_BANLIST", "data/banlist.php");
define("FM_BANNEDIP", "data/bannedip.php");
define("FM_BANNERS", "data/banners.php");
define("FM_BOARDINFO", "data/boardinfo.php");
define("FM_BOARDINFO_BAK", "data/boardinfo_bak.php");
define("FM_BOARDSTATS", "data/boardstats.php");
define("FM_COUNTERS", "data/counters.php");
define("FM_TITLES", "data/membertitles.php");
define("FM_NEWS", "data/news.php");
define("FM_ONLINE", "data/onlinedata.php");
define("FM_SKIP_MAILS", "data/skip_mails.php");
define("FM_SMILES", "data/smiles.php");
define("FM_USERS", "data/users.php");
define("FM_TEMPUSERS", "data/users_temp.php");
define("FM_SEARCH_EXC", "data/search_exc.php");
define("FM_VERSION", "1.0 RC1");

require_once('lib.php');
require_once('page_header.php');

$fm->_Advertising();
$fm->_Authorization();

// Если сервер в заголовках принудительно ставит левую кодировку, пошлём его подальше и поставим свою ;)
header('Content-Type: text/html; charset='.$fm->LANG['ENCODING']);

$fm->exbb['version'] = FM_VERSION;

// На домене установки форум будет доступен только по тому URL, который указан в админке
// Это предотвращает проблемы с работой сессий и куки на производных поддоменах типа 'www' и т п.
preg_match("#(www\.|)([[:alnum:]\.\-]+)/([[:alnum:]\/\.\-]+)#is", $_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'], $req_url);
preg_match("#(www\.|)([[:alnum:]\.\-]+)/([[:alnum:]\/\-]+)#is", $fm->exbb['boardurl'], $set_url);
if (@$req_url[2] == @$set_url[2] && $req_url[1] != $set_url[1])
header('Location: http://'.$set_url[2].'/'.$req_url[3].(($_SERVER['QUERY_STRING'] ? '?'.$_SERVER['QUERY_STRING'] : '')));
unset($req_url, $set_url);

if ($fm->exbb['installed'] === FALSE) {
header("Location: ./install/index.php");
} elseif (file_exists("./install/index.php")) {
$fm->_Message($fm->LANG['MainMsg'],$fm->LANG['DelleteInstallDir']);
}

if ($fm->exbb['board_closed'] && !(defined('IS_LOGIN') || defined('IS_ADMIN'))) {
$fm->_Message($fm->LANG['BoardClosed'],nl2br(strtr($fm->exbb['closed_mes'], array_flip(get_html_translation_table(HTML_SPECIALCHARS)))));
}
?>
12. NordWest - 16 февраля 2015 — 18:33 - перейти к сообщению


13. cooper - 16 февраля 2015 — 21:32 - перейти к сообщению
NordWest, - в common прописал, не помогло.
Из всех подчеркнутых файлов, у меня есть только:
fm.class.рнр
JsHttpRequest.рнр
Но в них нет функции: htmlspecialchars
Ну или устал уже. Подмигивание
-
"Танцы с бубнами".....................
Запустил Денвер-3 РНР5
Залил туда весь форум из бэкапа - все работает как часы.
Проблема в кодировке!
Пока лазил по JsHttpRequest.рнр - обнаружил там интересные строки:
CODE:

* Convert a PHP scalar, array or hash to JS scalar/array/hash. This function is
* an analog of json_encode(), but it can work with a non-UTF8 input and does not
* analyze the passed data. Output format must be fully JSON compatible.

CODE:
if (function_exists('array_walk_recursive') && function_exists('json_encode') && $this->_unicodeConvMethod) {
$encoding = "UTF-8";
$this->_nonAsciiChars = join("", array_map('chr', range(128, 255)));
$this->_toUtfFailed = false;
array_walk_recursive($result, array(&$this, '_toUtf8_callback'), $this->SCRIPT_ENCODING);
if (!$this->_toUtfFailed)

Вообще-то я рнр знал только немножко, да и то вчера. Но судя по всему там запрет на работу с utf-8.
14. NordWest - 17 февраля 2015 — 05:44 - перейти к сообщению
cooper пишет:
NordWest, - в common прописал, не помогло.
А оно одно и не должно помочь. Только в связке с проверкой и правкой всех функций htmlspecialchars.

Давайте бекап форума - покопаюсь.
15. cooper - 17 февраля 2015 — 08:02 - перейти к сообщению
Ситуация такая, - тут постоянно говорилось, что форум работает только на серверах с windows-1251.
Ппрописать в .htaccess эту строку:
CODE:
AddDefaultCharset windows-1251

- ничего не решает.
Эта строка регламентирует сервер передавать браузеру инфу в этой кодировке, и то, если не будет другой команды. На то, что передает браузер на сервер, это не распространяется.
Есть еще две директивы:
CODE:
CharsetSourceEnc windows-1251

- Загрузка файлов только в windows-1251
CODE:
CharsetDisable on

- Запрет перекодировать файлы.
Обе эти директивы вызывают у меня на хостинге - ошибку 500.
.htaccess ограничено в своей работе директивами заданными в httpd.conf

Яндекс.Метрика   

Powered by ExBB
[Script Execution time: 0.0247]     [ ]