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

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

Вы не вошли.

Объявление

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

#1 2006-03-28 11:08:13

kisin
Гость

Проблема с Base URL

Дело в  том, что ко мне на форум люди заходят двумя путями:
1) forum.xxx.ru (установлен как Base URL).
2) http://80.80.80.80/forum/ (через проксю, чтобы траффик был бесплатным).

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

Неверный источник. Вы попали на эту страницу из несанкционированного источника. Пожалуйста, вернитесь и попробуйте еще раз. Если проблема осталась, пожалуйста, убедитесь что 'Начальный URL' правильно установлен в Администрирование/Свойства и, что, Вы попадаете на форум через этот URL.

где бы мне закомментировать в коде проверку на Base URL?

#2 2006-03-28 20:24:50

kisin
Гость

Re: Проблема с Base URL

что-то похоже вопросы у меня заумные smile о проблеме с image_upload никто не ответил (даже на punres.org), на этот тоже похоже не ответят roll

#3 2006-03-29 04:21:41

hcs
Гость

Re: Проблема с Base URL

при редактировании и прочих манипуляций происходит проверка на валидность, т.е. что  запрос пришел не со стороны,  проверяется Base URL
Проверяет это дело функция confirm_referrer из function.php
В частности при редактировании поста вызов этой функции в edit.php находится в строке ~ 73

    if ($is_admmod)
        confirm_referrer('edit.php');

в delete.php этот вызов в строке ~70
попробуй закомментировать, может чо и получитяся. только это скажется на безопасности., поэтому лучше добавить альтернативный Base_URL , подправив функцию confirm_referrer

#4 2006-03-29 22:06:03

kisin
Гость

Re: Проблема с Base URL

в пхп не очень силен, поэтому прошу проверить:

function confirm_referrer($script)
{
    global $pun_config, $lang_common;

    if (!preg_match('#^'.preg_quote(str_replace('www.', '', $pun_config['o_base_url']).'/'.$script, '#').'#i', str_replace('www.', '', (isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : ''))))
        message($lang_common['Bad referrer']);
}

поменял на:

 
function confirm_referrer($script)
{
    global $pun_config, $lang_common;

    if (!preg_match('#^'.preg_quote(str_replace('www.', '', $pun_config['o_base_url']).'/'.$script, '#').'#i', str_replace('www.', '', (isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : ''))) & !preg_match('#^'.preg_quote(str_replace('www.', '', '80.152.190.212/fehyl2').'/'.$script, '#').'#i', str_replace('www.', '', (isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : ''))) )
        message($lang_common['Bad referrer']);
}

Подвал доски

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