Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb3

В данном подфоруме будут располагаться темы с анонсами интересных модификаций, а так же будут рассматриваться проверенные временем дополнения для phpBB3.

Модераторы: Vl@d1m1r, Lorem Ipsum, Atlas

Правила форума
----
Аватара пользователя
DeaDRoMeO
Старожил Форума
Старожил Форума
Сообщения: 16763
Стаж: 13 лет
Откуда: Витебск
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb3

Сообщение DeaDRoMeO »

Любой админ форума знает, что такие ошибки как 400, 401, 403, 404, 500 выводятся на дефолтные страницы хостинга, тобишь черными буквочками на белом фоне. Сегодня хотел бы проанонсировать мини-мод, делающий такие страницы в стиле форума. К примеру перейдите по следущему адресу

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

http://hello-vitebsk.ru/index.phpg
Сами видите работу мода, ошибка оформляется в стиле форума. Для того, чтобы сделать у себя аналогичное отображение, следует через текстовый редактор создать файл error.php со следущим содержанием

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

<?php
/*
*
* error.php
*
* @package th23_error_pages
* @author Thorsten Hartmann (www.th23.net)
* @copyright (c) 2008 by Thorsten Hartmann (www.th23.net)
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

// setup
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

$user->session_begin();
$auth->acl($user->data);
$user->setup();
$template->assign_vars(array(
   'U_TH23_ERROR_PAGES_BASE' => generate_board_url() . '/',
));
// in case of an error page we don't need more
$err_code = request_var('e', 0);
switch ($err_code)
{
	case '400':
		$msg_title = $user->lang['TH23_ERROR_400_TITLE'];
		trigger_error('TH23_ERROR_400_BAD_REQUEST');
	break;
	case '401':
		$msg_title = $user->lang['TH23_ERROR_401_TITLE'];
		trigger_error('TH23_ERROR_401_UNAUTHORIZED');
	break;
	case '403':
		$msg_title = $user->lang['TH23_ERROR_403_TITLE'];
		trigger_error('TH23_ERROR_403_FORBIDDEN');
	break;
	case '404':
		$msg_title = $user->lang['TH23_ERROR_404_TITLE'];
		trigger_error('TH23_ERROR_404_NOT_FOUND');
	break;
	case '500':
		$msg_title = $user->lang['TH23_ERROR_500_TITLE'];
		trigger_error('TH23_ERROR_500_INT_SERVER');
	break;
	default:
		$msg_title = $user->lang['TH23_ERROR_UNKNOWN_TITLE'];
		trigger_error('TH23_ERROR_UNKNOWN');
	break;
}

?>
Сохранить и закачать в корень форума. Потом открыть корневой файл .htaccess и найти в нем

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

<Files "config.php">
Вставить перед найденным

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

# th23 start - error pages
ErrorDocument 400 /error.php?e=400
ErrorDocument 401 /error.php?e=401
ErrorDocument 403 /error.php?e=403
ErrorDocument 404 /error.php?e=404
ErrorDocument 500 /error.php?e=500
# th23 end - error pages
Открыть language/ru/common.php и найти

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

'TEST_CONNECTION'
Вставить перед найденным

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

	// th23 start - error pages
	'TH23_ERROR_400_TITLE' => 'Ошибка 400 - Неверный запрос',
	'TH23_ERROR_400_BAD_REQUEST' => 'Ваш запрос имеет ошибки в синтаксисе.',
	'TH23_ERROR_401_TITLE' => 'Ошибка 401 - Нет авторизации',
	'TH23_ERROR_401_UNAUTHORIZED' => 'Запрос требует идентификации пользователя. Произошла ошибка при идентификации.',
	'TH23_ERROR_403_TITLE' => 'Ошибка 403 - Запрещено',
	'TH23_ERROR_403_FORBIDDEN' => 'У вас нет необходимых прав доступа к файлам либо выполнению запроса.',
	'TH23_ERROR_404_TITLE' => 'Ошибка 404 - Не найдено',
	'TH23_ERROR_404_NOT_FOUND' => 'На данном сервере такого файла не существует.',
	'TH23_ERROR_500_TITLE' => 'Ошибка 500 - Ошибка сервера',
	'TH23_ERROR_500_INT_SERVER' => 'На сервере возникла ошибка.',
	'TH23_ERROR_UNKNOWN_TITLE' => 'Ошибка - Неизвестно',
	'TH23_ERROR_UNKNOWN' => 'Неизвестная ошибка сервера.',
	// th23 end - error pages
Открыть /styles/ваш стиль/template/overall_header.html и найти Вставить после найденного

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

<!-- th23 start - error pages -->
<!-- IF U_TH23_ERROR_PAGES_BASE -->
<base href="{U_TH23_ERROR_PAGES_BASE}" />
<!-- ENDIF -->
<!-- th23 end - error pages -->
Очистить кеш и радоваться результатам :dan_ser:
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
#1
delitant
Активно общаюсь
Активно общаюсь
Сообщения: 318
Стаж: 12 лет 2 месяца
Откуда: Украина
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb

Сообщение delitant »

Недавно на своем форуме сделал? Я неделю назад делал себе (не много по другому) и у тебя проверял есть или нет :)
#2
Аватара пользователя
DeaDRoMeO
Старожил Форума
Старожил Форума
Сообщения: 16763
Стаж: 13 лет
Откуда: Витебск
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb

Сообщение DeaDRoMeO »

delitant писал(а):Недавно на своем форуме сделал?
Вчера сделал у себя, потестил, потом в эту тему отписал что да как
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
#3
Аватара пользователя
Romnik
Начинаю осваивать Форум
Начинаю осваивать Форум
Сообщения: 131
Стаж: 11 лет 7 месяцев
Откуда: Россия, Москва
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb

Сообщение Romnik »

Мой вариант перевода в соответствии со стандартом:

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

     // th23 start - error pages
    'TH23_ERROR_400_TITLE' => 'Ошибка 400 - Неверный запрос.',
    'TH23_ERROR_400_BAD_REQUEST' => 'Запрос содержит неверный синтаксис и не может быть выполнен.',
    'TH23_ERROR_401_TITLE' => 'Ошибка 401 - Нет авторизации.',
    'TH23_ERROR_401_UNAUTHORIZED' => 'Запрос требует идентификации пользователя. Произошла ошибка при идентификации.',
    'TH23_ERROR_403_TITLE' => 'Ошибка 403 - Доступ запрещён.',
    'TH23_ERROR_403_FORBIDDEN' => 'У вас нет необходимых прав доступа к выполнению запроса.',
    'TH23_ERROR_404_TITLE' => 'Ошибка 404 - Не найдено.',
    'TH23_ERROR_404_NOT_FOUND' => 'Страница не найдена.',
    'TH23_ERROR_500_TITLE' => 'Ошибка 500 - Ошибка Сервера.',
    'TH23_ERROR_500_INT_SERVER' => 'Внутренняя Ошибка Сервера.',
    'TH23_ERROR_UNKNOWN_TITLE' => 'Неизвестная ошибка.',
    'TH23_ERROR_UNKNOWN' => 'Неизвестная ошибка сервера.',
    // th23 end - error pages
Если Ваш форум находится в каталоге, например /forum то обязательно укажите в файле .htaccess полный путь, пример:

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

http://www.domen.ru/forum/error.php?e=400
- Установленные моды
#4
Аватара пользователя
DeaDRoMeO
Старожил Форума
Старожил Форума
Сообщения: 16763
Стаж: 13 лет
Откуда: Витебск
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb

Сообщение DeaDRoMeO »

Любое мнение имеет место быть, хороший перевод, да и я забыл упомянуть про путь до папки форума (если форум не в корне хостинга)
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
#5
Аватара пользователя
Roman
Активно осваиваю Форум
Активно осваиваю Форум
Сообщения: 161
Стаж: 11 лет 9 месяцев
Откуда: Киев
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb

Сообщение Roman »

Спасибо.
Очень полезный и легкоустанавливаемый мод.
В копилку :-00):
#6
Аватара пользователя
DeaDRoMeO
Старожил Форума
Старожил Форума
Сообщения: 16763
Стаж: 13 лет
Откуда: Витебск
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb

Сообщение DeaDRoMeO »

Всегда пожалуйста, как по мне, так лучше такое отображение страниц ошибок, чем дефолтный белый фон и черные буковки
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
#7
Аватара пользователя
Lorem Ipsum
Прописался тут надолго
Прописался тут надолго
Сообщения: 1974
Стаж: 11 лет 7 месяцев
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb

Сообщение Lorem Ipsum »

DeaDRoMeO писал(а):К примеру перейдите по следущему адресу index.phpg
Попробовала у себя с ошибкой - перенаправляет на правильный адрес автоматически. Почему?
Последний раз редактировалось Lorem Ipsum 26 ноя 2012, 17:32, всего редактировалось 1 раз.
Я уже прошел тот период когда можно было забывать про очистку кеша ©salexcorp
#8
Аватара пользователя
DeaDRoMeO
Старожил Форума
Старожил Форума
Сообщения: 16763
Стаж: 13 лет
Откуда: Витебск
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb

Сообщение DeaDRoMeO »

Хостинг, дело в нем, возможно чтото стоит у тебя, что может перенаправлять на путь истинный)
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
#9
Аватара пользователя
boroda-max
Активно осваиваю Форум
Активно осваиваю Форум
Сообщения: 180
Стаж: 11 лет 4 месяца
Откуда: CCCР. Ленинград
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb

Сообщение boroda-max »

Lorem Ipsum Скорее всего настройки сервера....
#10
rootmix
Заглянул на огонек
Заглянул на огонек
Сообщения: 24
Стаж: 10 лет 4 месяца

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb3

Сообщение rootmix »

Спасибо за мод.
А то мой дефлтный от "Застройщика" порядком поднадоел. ))
#11
maa1988
Зашел немного посидеть
Зашел немного посидеть
Сообщения: 65
Стаж: 10 лет 5 месяцев
Откуда: Москва

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb3

Сообщение maa1988 »

Раньше все работало.
Сейчас проверил не работает... хотя все загружено...
если вставлять адрес какую нибудь строку, то перебрасывает на ошибку страницы хостинга....
#12
Аватара пользователя
DeaDRoMeO
Старожил Форума
Старожил Форума
Сообщения: 16763
Стаж: 13 лет
Откуда: Витебск
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb3

Сообщение DeaDRoMeO »

Проверьте заново правки или спросите хостера, может он намудрил чего
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
#13
Аватара пользователя
БОРИСЫЧ
Зашел немного посидеть
Зашел немного посидеть
Сообщения: 89
Стаж: 10 лет
Откуда: Москва
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb3

Сообщение БОРИСЫЧ »

Ошибки 400, 401, 403, 500 на нормально функционирующем форуме быть вроде и не должны, а если и возникают - то это редкое явление. Я бы этими ошибками вообще пренебрег. Юзеры как правило часто встречаются с 404 ошибкой. Я сделал проще, зачем создавать новые файлы и править шаблоны -

пишем в htaccess:
ErrorDocument 404 /viewforum.php?f=404

Поскольку форум № 404 заведомо отсутствует (по крайней мере у меня) то и выдается встроенная в систему ошибка.

Рабочий пример см. на http://www.consforum.ru
#14
Аватара пользователя
Ovsyanka
Зашел немного посидеть
Зашел немного посидеть
Сообщения: 52
Стаж: 9 лет 6 месяцев
Откуда: Россия
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb3

Сообщение Ovsyanka »

А адрес куда правильно ставить в htaccess? Все вроде сделал. Но что то не хочет работать. просто ничего не грузиться.
#15
Аватара пользователя
DeaDRoMeO
Старожил Форума
Старожил Форума
Сообщения: 16763
Стаж: 13 лет
Откуда: Витебск
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb3

Сообщение DeaDRoMeO »

Если я правильно понял ваш вопрос, то нужен htaccess который в корне вашего форума лежит
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
#16
Аватара пользователя
Ovsyanka
Зашел немного посидеть
Зашел немного посидеть
Сообщения: 52
Стаж: 9 лет 6 месяцев
Откуда: Россия
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb3

Сообщение Ovsyanka »

эм....пока откатился назад. попробую по новой.
Сделал теперь все работает. Теперь вот надо переездом на новый форум со старого разобраться.
#17
Павел
Заглянул на огонек
Заглянул на огонек
Сообщения: 14
Стаж: 7 лет 11 месяцев

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb3

Сообщение Павел »

Здравствуйте. Столкнулся с проблемой после установки этого мода. Текст ошибки на несуществующей странице виден только зарегистрированным пользователям. Гостям же ничего не выводится и к тому же дескрипшен (описание) удалённой страницы остаётся прежним, не "Ошибка 404 и пр."
Во вьютопике в месте вывода этой информации прописано следущее:

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

<!-- NOTE: remove the style="display: none" when you want to have the forum description on the topic body -->
		<!-- IF FORUM_DESC --><div style="display: none !important;">{FORUM_DESC}<br /></div><!-- ENDIF --> 
Помогите исправить ошибку...
#18
Аватара пользователя
DeaDRoMeO
Старожил Форума
Старожил Форума
Сообщения: 16763
Стаж: 13 лет
Откуда: Витебск
Контактная информация:

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb3

Сообщение DeaDRoMeO »

Форум лежит в корне хостинга или в папке?
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
#19
Павел
Заглянул на огонек
Заглянул на огонек
Сообщения: 14
Стаж: 7 лет 11 месяцев

Свои страницы ошибок (400, 401, 403, 404, 500) для phpbb3

Сообщение Павел »

В корне хостинга.
#20
Ответить