Не работает авторизация после установки моста 2.0.2.1a

Тема в разделе "Joomla + SMF", создана пользователем Schemer, 24.02.2008.

  1. Schemer
    Offline

    Schemer Недавно здесь

    Регистрация:
    26.11.2007
    Сообщения:
    49
    Симпатии:
    1
    Пол:
    Мужской
    Добрый день.
    Ситуация следующая.

    Стоял форум SMF 1.1.4, с уже поднакопившейся базой пользователей и сообщений.
    Понадобился сайт, в следствии чего была установлена Joomla 1.0.13, понятное дело что нужна интеграция сайта и форума.
    Поизучав форум, понял, что с этой интеграцией есть достаточные проблемы, однако существует профиксенный бридж 2.0.2.1а. Установил его. Вроде бы все сделал правильно, то есть проинсталил мост, заменил джумловский index.php, пропатчил форумский index.php, синхронизировал базу пользователей. Правда не все пользователи перенеслись по причине не соответствия логинов ограничениям Джмулы, но это мелочи по сравнению с другими проблемами.

    Теперь ситуация следующая. Если на сайте авторизовывается пользователь, который был зарегистрирован после проведения интеграции, то в общем-то все отлично. Он успешно проходит авторизацию на сайте, и под своим аккаунтом может заходить на форум. Правда, при логауте этого пользователя в логи пишется вот такая ошибка:
    Код (CODE):
    1. http://сайт/forums/index.php?option=com_smf&Itemid=30&action=logout;sesc
    2.  
    3. 2: session_destroy() [<a href='function.session-destroy'>function.session-destroy</a>]: Trying to destroy uninitialized session
    4. Файл: [I][путь к корню сайта][/I]/forums/Sources/Subs-Auth.php
    5. Строка: 174


    Но все ГОРАЗДО хуже при попытке авторизации через сайт пользователей, зарегистрированных на форуме до интеграции, которые вроде как синхронизировались. Во-первых, пользователь не проходит авторизацию, во-вторых, его выбрасывает на белую страницу, в третьих в логи пишется 3 ошибки.
    Код (CODE):
    1. http://сайт/forums/index.php?option=com_smf&amp;Itemid=30&amp;action=login2
    2.  
    3. 8: Undefined variable: mos
    4. Файл: [I][путь к корню сайта][/I]/components/com_smf/smf.class.php
    5. Строка: 874

    Та же ошибка еще и в строках 876 и 885.

    Попытка авторизоваться этих пользователей прямо с форума проходит успешно.

    В чем проблема? Хоть что-нибудь подскажите, а то я уже задолбался.

    Да, забыл сказать, заглянул в базу, все пользователи с форума были перенесены в таблицу Джумлы, единственное, что меня насторожило, так это то, что хеш пароля перенесенных пользователей оличается от тех, что регистрируются на сайте и могут авторизовываться.
    Хеш тех, что перенесены с форума, условно говоря имеют вид - хеш
    А тех, что регистрируются и могут успешно проходить авторизаци имеют вид - хеш:хеш
    Может быть в этом дело?

    Добавлено через 4 часа 0 минут
    Только сейчас до меня доперло, что в таком виде хранятся пароли пользователей в J! 1.0.13, только не понятно, почему из SMF они не экспортировались в таком же виде.
     
    Последнее редактирование: 24.02.2008
  2.  
  3. Jkr
    Offline

    Jkr Группа поддержки

    Регистрация:
    04.08.2006
    Сообщения:
    464
    Симпатии:
    27
    Пол:
    Мужской
    Ответ: Не работает авторизация после установки моста 2.0.2.1a

    потому что в бридже 2.0.2.1а вряд ли была переписана функция синхронизации баз данных.
    это кустарный бридж, который делали разьяренные пользователи, чтобы работала авторизация на их уже интегрированных сайтах (т.е. там, где в синхронизации необходимости нет). а проблема эта появилась именно из-за того, что с 13ой версии j! появился тот самый хэш.хэш вид о котором вы упомянули. таким образом, подправили скорее всего только функции регистрации и авторизации.
    в такой ситуации можно попробовать посмотреть, чем отличаются функции авторизации в 2.0.2 и в 2.0.2.1а и основываясь на этой разнице преобразовать функцию синхронизации.
     
  4. Schemer
    Offline

    Schemer Недавно здесь

    Регистрация:
    26.11.2007
    Сообщения:
    49
    Симпатии:
    1
    Пол:
    Мужской
    Ответ: Не работает авторизация после установки моста 2.0.2.1a

    Jkr, спасибо за ответ.
    Жесть конечно получается... Придется делать сборную солянку из 2.0.2 и 2.0.2.1a.
    Хотя я уже начал подумывать о том, чтобы пересохранить все пароли пользователей в нужный вид, в котором они хранятся в джумловской базе.

    Добавлено через 12 минут
    Так, вопрос возник. А бридж 2.0.2 писался под какую версию Джумлы? Там предусмотрино то как хранятся пароли в J! 1.0.13?
     
    Последнее редактирование: 24.02.2008
  5. Jkr
    Offline

    Jkr Группа поддержки

    Регистрация:
    04.08.2006
    Сообщения:
    464
    Симпатии:
    27
    Пол:
    Мужской
    Ответ: Не работает авторизация после установки моста 2.0.2.1a

    Нет. Он писался под 12. 2.0.2.1 - тоже под 12, но там фикс бага со всплывающим окном для доп. смайлов. 2.0.2а - это без фикса для всплывающего окна, но для 13 (искать на форумах джумлахакс). 2.0.2.1а - это с фиксом и для 13.


    А хеши одного и того же пароля для joomla и smf совпадают? Если да, то это самый простой вариант.
     
  6. Schemer
    Offline

    Schemer Недавно здесь

    Регистрация:
    26.11.2007
    Сообщения:
    49
    Симпатии:
    1
    Пол:
    Мужской
    Ответ: Не работает авторизация после установки моста 2.0.2.1a

    Если 2.0.2.1а для 13-ой, то почему он при синхронизации не перевел парли в нужный вид? Я так понимаю, что это ни один мост не может сделать, так что ли?

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

    Добавлено через 15 минут
    Путем экспериментов было выяснино, что в Джумле пароли хранятся в виде хеш(пароль[знак конкатинации]превикс):префикс
    А значит, экспортировать пароли в J! 13 из какой-нибудь другой базы не зная сами пароль не реально... ((((
     
    Последнее редактирование: 25.02.2008
  7. Jkr
    Offline

    Jkr Группа поддержки

    Регистрация:
    04.08.2006
    Сообщения:
    464
    Симпатии:
    27
    Пол:
    Мужской
    Ответ: Не работает авторизация после установки моста 2.0.2.1a

    так. функция синхронизации не была адаптирована под 13 j! ни в одном бридже. хотя, последний раз я смотрел таковой месяца 3-4 назад, возможно были выпущены новые версии.

    сочувствую :(
     
  8. Schemer
    Offline

    Schemer Недавно здесь

    Регистрация:
    26.11.2007
    Сообщения:
    49
    Симпатии:
    1
    Пол:
    Мужской
    Ответ: Не работает авторизация после установки моста 2.0.2.1a

    Хы, смысл тогда этих мостов, если они поьзователей адекватно не могут синхронизировать? =))
     
  9. Jkr
    Offline

    Jkr Группа поддержки

    Регистрация:
    04.08.2006
    Сообщения:
    464
    Симпатии:
    27
    Пол:
    Мужской
    Ответ: Не работает авторизация после установки моста 2.0.2.1a

    когда ставишь с 0, то регистрация идет сразу и на сайт, и на форум и синхронизировать ничего не надо.
     
  10. Schemer
    Offline

    Schemer Недавно здесь

    Регистрация:
    26.11.2007
    Сообщения:
    49
    Симпатии:
    1
    Пол:
    Мужской
    Ответ: Не работает авторизация после установки моста 2.0.2.1a

    А, да, логично. Как-то я об этом уже и забыл, думая только о своей проблеме.
    Что-то я сам себе начинаю уже сочувствовать...
     
  11. Jkr
    Offline

    Jkr Группа поддержки

    Регистрация:
    04.08.2006
    Сообщения:
    464
    Симпатии:
    27
    Пол:
    Мужской
    Ответ: Не работает авторизация после установки моста 2.0.2.1a

    я не защищаю создателей моста за допущенные ими ошибки, но в то же время отношусь к ним с уважением за то, что они вообще сделали такой бридж. в общем-то я просто ответил на ваш вопрос ;)
     
  12. Schemer
    Offline

    Schemer Недавно здесь

    Регистрация:
    26.11.2007
    Сообщения:
    49
    Симпатии:
    1
    Пол:
    Мужской
    Ответ: Не работает авторизация после установки моста 2.0.2.1a

    Jkr, да, благодарю за ответы.
     

Поделиться этой страницей

Загрузка...