Быстрый лёгкий надёжный форумный движок
Вы не вошли.
Страницы 1
Всем доброго времени суток, уважаемые! Итак имеется форум свежайшей версии 1.5.11. И этот форум будет находится в 2 локалках одновременно и поэтому должен иметь 2 урла. Почему 2 не спрашивайте просто ТЗ такое и крутись я как хошь
Я установил и настроил форум в одной сети. Все работает прекрасно. Далее, пробросил порты до форума с другой сети. Форум загружается и отображается, но нет возможности создать юзера, тему, ответ в теме и пр. Падает в ошибку:
Плохой HTTP_REFERER. Вы перешли на эту страницу из неавторизованного источника. Если проблема постоянная, убедитесь, что 'Base URL' верно прописан в Admin/Options и что вы посещаете форум именно по такому URL. Дополнительную информацию вы можете получить из документации по FluxBB.
Я гуглил и накнулся на это - Товарищ в пятом посте говорит что можно, добавить доп. условие при проверке, чтобы оно обходило несколько base_url
признайте, ситуация когда у одного форума ДВА адреса ненормальная, может быть временно оно и может быть, но не навсегда!
imho, если такая потребность возникает, значит надо в кончерватории что-то править.чтобы ВРЕМЕННО использовать второй адрес в confirm_referrer, надо прописать в o_base_url ПРАВИЛЬНОЕ значение, какое будет всегда, а в
confirm_referrer() ВРЕМЕННО продублировать проверку, типа такоговместо
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']);сделать
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('http://mytemporaryaddress.com/forum'.'/'.$script, '#').'#i', str_replace('www.', '', (isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : ''))) )
message($lang_common['Bad referrer']);понятно как работает? если первое условие не сработало, дается еще один шанс, прежде чем застопориться в message()
Из этого вопрос. Как отключить/исправить проверку HTTP_REFERER? Я не нашел подобного кода. Как добавить 2 URL в проверку или отключить ее?
Так же я предпологаю что у этого движка есть проверка на множество регистрация с одного IP. Т.к форум внутрений, там все реги будут с 1 IP, Это тоже жалетельно отключить. Как это сделать?
Offline
В попытках исправить это я полностью удалил код из function confirm_referrer. Ответ отправляется, но форум пытается вернуться на базовый урл и выпадает в ошибку:
ERROR
The requested URL could not be retrieved
The following error was encountered while trying to retrieve the URL: http://*****************/viewtopic.php?
Unable to forward this request at this time.
This request could not be forwarded to the origin server or to any parent caches.
Some possible problems are:
An Internet connection needed to access this domains origin servers may be down.
All configured parent caches may be currently unreachable.
The administrator may not allow this cache to make direct connections to origin servers.
Your cache administrator is ************
Редактировался Llilakia (2019-01-20 14:51:00)
Offline
Пробуйте в файле include/common.php после
if (!defined('PUN_CONFIG_LOADED'))
{
if (!defined('FORUM_CACHE_FUNCTIONS_LOADED'))
require PUN_ROOT.'include/cache.php';
generate_config_cache();
require FORUM_CACHE_DIR.'cache_config.php';
}
добавить
if (false === strpos($_SERVER['HTTP_REFERER'], str_replace(array('http://', 'https://'), '://', $pun_config['o_base_url']))) {
$pun_config['o_base_url'] = 'ВТОРОЙ УРЛ ФОРУМА';
}
Моя сборка FluxBB 1.5, ForkBB · сообщество
Offline
Спасибо! Помогло, но частично
В первом посте забыл сказать, о том, что не появлялись аватарки. После добавления вашего кода, аватарки стали отображаться, но ответы так и не постятся.
Я изучал код functions.php и пришел к выводу, что надо каким то образом надо перехватить function get_current_url, и подставить в ее туда где происходит проверка на рефер. Могу ошибатся, я плохо знаю php. Больше по Python и Bash
Так же в ошибку падает, при:
удалении аватара
загрузки аватара
Добавлении настоящего имени
Редактировался Llilakia (2019-01-20 18:17:08)
Offline
Все! Вопрос решен! Удалил фунцию и вставил ваш код! Заработало! Спасибо!
Offline
Страницы 1