Joostina+Vanillaforum
  • VladzimirVladzimir Октябрь 2011
    Всем привет. На днях тыркался я с интеграцией Джустины И ВаниллаФорума (тот что стоит на этом сайте). Помучался скажу я вам долго. Думал уже на хостера списать в своих проблемах. Ан нет. Все оказалось прозаичней. Джустина при глубоком изучении оказалось "не пальцем деланная". На любое несоответствие данных сессия резалась на корню. Например: куки отправлены не с того айпишника - до свидание, сменился браузер - туда же. Это говорит о том что даже если злоумышленники сопрут ваши куки - они ими не смогут воспользоваться, как ни старайся - эт я про защищенность Джустины.

    Теперь о самой интеграции. Идея почерпнута от сюда http://anton.shevchuk.name/php/embed-migration-integration-vanilla/. Но как вы уже поняли, это все оказалось не таким легким как описано в данной статье.
    Для интеграции Ваниллы и Джустины нам понадобиться Ванилла (но не менее чем 2.0.17.10) + (ProxyConnect брать здесь http://vanillaforums.org/addon/proxyconnect-plugin).

    Пока все вскоре дополню статью.
  • VladzimirVladzimir Октябрь 2011
    И снова здравствуйте.
    Теперь о интеграции по порядку.
    Качаем русскую локализованную версию http://vanillaforum.ru/download/RUS_Vanilla2.0.18b2_Alpha5.zip
    Ставиться она без проблем и танцев с бубнами. Единственно что для ваниллы требуется из экзотики - это наличие на хостинге pdo_mysql.
    Ставить рекомендую в папку (хотя можно и в поддомен, и даже на отдельный домен. Как и почему - опишу в самом конце)
    Вторым шагом необходимо скачать и установить плагин (простым копированием в папку plugins) Vanilla ProxyConnect - http://vanillaforums.org/addon/proxyconnect-plugin.
    Далее заходим в админку Джустины и устанавливаем компонент Vanilla (см. аттач). Больше в самой Джустине делать ничего не надо, кроме одно штриха внести изменения (мамбот не писал - звыняйтэ) в com_login вот этот код setcookie("Vanilla", "deleted", time() - 1,'/', ".domain.com", false);
    setcookie("Vanilla-Volatile", "deleted", time() - 1, '/', ".domain.com", false);
    unset($_COOKIE['Vanilla']);

    Теперь идем в админку Ваниллы заходим в плагины, активируем ProxyConnect. Выбираем Authentication вместо password - ProxyConnect.
    И прописываем адрес нашего сайта (где стоит Джустина), адрес страницы с регистрацией, логин, разлогин) и Адрес Авторизации (Authenticate URL) - http://адрес-сайта-с-джустиной/index2.php?option=com_vanilla&no_html=1 (именно так и не иначе).
    Остался последний шрих. Из-за сильной защищенности Джустины, просто так куки навесить ей нельзя, поэтому в файле плагина ProxyConnect plugins/ProxyConnect/class.proxyauthenticator.php заменить
    $Response = ProxyRequest($ForeignIdentityUrl, 5);
    на
    $Response = ProxyRequest($ForeignIdentityUrl.'&ipadress='.$_SERVER['REMOTE_ADDR'], 5);
    Теперь все.
    P.S. Если у вас пользователи имеют логины в кириллице, то закомментируйте строку в том же файле.
    $UserName = trim(preg_replace('/[^a-z0-9- ]+/i','',$UserName));

    Теперь на счет поддоменов или других доменов на котором стоит форум. Джустина присваивает куки только на сам домен где она стоит. Для того чтобы куки устанавливались и на поддомен необходимо внести кое-какие правки в код /includes/joostina.php
    Найти все функции setcookie и в самом конце добавить еще один параметр
    .'.getenv('HTTP_HOST')
    Если же вы хотите чтобы работало на стороннем домене - продублируйте все функции setcookie только в качестве последнего параметра добавтье адрес вашего сайта.


    Отредактированно Vladzimir в 2011-10-05 15:23:36
  • abasiaabasia Октябрь 2011
    Уже легче, если понадобиться :) Спасибо большое.
  • bostonboston Октябрь 2011
    Фигасе, крутая штука! А в настройки это всё вынести нельзя?
  • VladzimirVladzimir Октябрь 2011
    Что именно?
  • bostonboston Октябрь 2011
    Настройку хоста и кириллические символы.
  • VladzimirVladzimir Октябрь 2011
    Для этого надо сам плагин ProxyConnect пилить. А я пока до этого еще не дошел.
  • astassastass Ноябрь 2011
    Добавил в закладки, отличная работа, давно мечтал поставить ваниллу в связке с нормальной СМС.

Добро пожаловать!

Похоже, что Вы здесь впервые. Если хотите поучаствовать, нажмите на одну из этих кнопок!

Войти Зарегистрироваться

В теме отметились