Уважаемые пользователи!
Напоминаем, что с 7 ноября 2020 года phpBB Group прекратила выпуск обновлений для phpBB версии 3.2.
С учетом этого, рекомендуется обновить конференции до версии 3.3.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до отдельного объявления.

[3.2][3.3] Ultimate phpBB SEO Friendly URL

Поддержка расширений, созданных авторами не из нашего сообщества, а также любые вопросы, связанные с расширениями для phpBB, кроме относящихся к форуму Для авторов.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.2.x | FAQ | Внимание! Прежде чем создать тему - прочти! | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
AlexOo
phpBB 1.4.4
Сообщения: 171
Стаж: 9 лет 6 месяцев
Благодарил (а): 29 раз
Поблагодарили: 7 раз

[3.2][3.3] Ultimate phpBB SEO Friendly URL

Сообщение AlexOo »

Название расширения: Ultimate phpBB SEO Friendly URL
Автор: phpbb-seo
Описание расширения: This Extension will URL rewrite phpBB URLs in various manners, injecting, or not, forums and topic titles in their URLS, each URL being rewritten once, no matter the number of links using it on the page.
Скачать: https://github.com/phpbb-seo/usu
Язык: en

Всем привет. Словил неприятный баг авторизации, может кто сталкивался и нашел, как его пофиксить. URL rewriting type: Mixed

1. Заходим в любой форум (/forum/chapter1.html) и пробуем с него авторизироваться

Результат: "Запрошенного форума не существует."

Урл имеет следующий вид:

Код: Выделить всё

/forum/viewforum.php/chapter1.html?forum_uri=chapter1&start=&sid=d6a68facbe4c4ad3a393804c24365fee
2. Аналогичная проблема при авторизации по ссылке профиля (/forum/member2.html)

Код: Выделить всё

/forum/memberlist.php/member2.html?mode=viewprofile&u=2&sid=28b81b906014133a86c32247b774281e
и выводит ошибку
Скрытый текст
Общая ошибка
Попытка перенаправления на потенциально опасный сайт.

BACKTRACE

FILE: (not given by php)
LINE: (not given by php)
CALL: msg_handler()

FILE: [ROOT]/ext/phpbbseo/usu/core/traits/seo.php
LINE: 127
CALL: trigger_error()

FILE: [ROOT]/ext/phpbbseo/usu/core/core.php
LINE: 730
CALL: phpbbseo\usu\core\core->seo_redirect()

FILE: [ROOT]/ext/phpbbseo/usu/event/listener.php
LINE: 629
CALL: phpbbseo\usu\core\core->zero_dupe()

FILE: [ROOT]/vendor/symfony/event-dispatcher/EventDispatcher.php
LINE: 214
CALL: phpbbseo\usu\event\listener->core_memberlist_view_profile()

FILE: [ROOT]/vendor/symfony/event-dispatcher/EventDispatcher.php
LINE: 44
CALL: Symfony\Component\EventDispatcher\EventDispatcher->doDispatch()

FILE: [ROOT]/phpbb/event/dispatcher.php
LINE: 62
CALL: Symfony\Component\EventDispatcher\EventDispatcher->dispatch()

FILE: [ROOT]/phpbb/event/dispatcher.php
LINE: 46
CALL: phpbb\event\dispatcher->dispatch()

FILE: [ROOT]/memberlist.php
LINE: 757
CALL: phpbb\event\dispatcher->trigger_event()
3. При авторизации из топика - топик доступен, но не возвращает на исходный урл. В итоге адрес страницы после авторизации имеет следующий вид урла

Код: Выделить всё

/forum/viewtopic.php/topic3.html?forum_uri=&start=&t=3&sid=226aaecfcb49ea2202b6d30f9651442c
И все урлы страницы становятся без ЧПУ. После перехода куда-либо в рамках форума ЧПУ срабатывает.

Помогите пожалуйста пофиксить.

Спасибо.
Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3033
Стаж: 13 лет 8 месяцев
Благодарил (а): 16 раз
Поблагодарили: 365 раз

Re: [3.2][3.3] Ultimate phpBB SEO Friendly URL

Сообщение Nekstati »

AlexOo, попробуйте так:

найти в файле ext\phpbbseo\usu\event\listener.php

Код: Выделить всё

	public function core_append_sid($event)
	{
добавить после

Код: Выделить всё

		if (strpos($event['url'], '/ucp.php') !== false && strpos($event['params'], 'mode=login&redirect=') !== false)
			$event['params'] = str_replace(['viewforum.php%2F', 'viewtopic.php%2F', 'memberlist.php%2F'], '', $event['params']);
		if (strpos($event['url'], 'memberlist.php/member') !== false && strpos($event['url'], 'mode=viewprofile') !== false)
			$event['url'] = str_replace('memberlist.php/', '', $event['url']);
(Это не исправление причины, а лишь обходной путь)

Вернуться в «Поддержка расширений для phpBB»