Jump to content

Как для форума сделать свои страницы с ошибками, 404, 403 и т.д.?

Featured Replies

Posted
comment_124565

Создал страницу с ошибкой 404 и в файле .htaccess прописал строку:

ErrorDocument 404 http://192.168.1.1/err404.html

Все равно открывается "стандартная" страница - где указан код ошибки... Пробовал указать относительные пути - тоже самое.
В чем хитрость??? Кто нибудь реализовал уже на форуме СВОИ страницы с ошибками? Подскажите как вы это сделали???

comment_124599

Как создать страницу ошибки 404?

..или страница которой нет!

Прежде чем создавать страницу ошибки 404 давайте сначала разберёмся что это вообще за ошибка такая..

Ошибка 404 или Not Found - не найдено.. это стандартный код ответа HTTP о том, что страницы, к которой обращается пользователь, нет на сервере.. попросту она не существует.

Возникать данная ошибка может в ряде случаев:

  • Ссылка, по которой пришёл пользователь, неверна.
  • Пользователь неправильно указал путь в адресной строке к одной из страниц Вашего сайта.
  • Ранее существовавшая страница Вами уже удалена или переименована, однако всё ещё существует в индексе поисковых систем или закладках пользователей.

Что увидит пользователь в результате этой ошибки?

В лучшем случае страницу с рекламой Вашего хостера и кратким объяснением что мол Вы "не туда попали".. в худшем это будет просто надпись: 404 Not Found - The requested URL /page.html was not found on this server - собственно "Запрашиваемый URL отсутствует на этом сервере".

Теперь представьте, что сделает пользователь когда увидит эту картину? Правильно!! закроет эту страницу и пойдёт искать интересующую его информацию в другом месте!! - в результате чего Вы потеряете целевого посетителя!

В этом уроке мы займёмся тем что создадим свою собственную пользовательскую страницу ошибки 404 - Которая в отличии от стандартных страниц ошибки будет иметь ряд несомненных преимуществ:

  • Данная страница будет содержать элементы дизайна Вашего сайта - тем самым даст понять посетителю что, несмотря на то что он попал не совсем туда куда хотел он всё таки попал именно на Ваш сайт!
  • Пользовательская страница 404, в отличие от стандартных, не будет "тупиковой", а на ней будут располагаться ссылки на основные страницы сайта.. - Что позволит посетителю двигаться дальше и тем самым удержит его на Вашем сайте.
  • Ну и в конце концов на такой странице можно дать вразумительные объяснения того по каким причинам пользователь оказался на ней.. предложить ему выход из сложившейся ситуации.. помочь найти на Вашем сайте интересующую его информацию.

Как видите сплошные плюсы..

Создаётся страница ошибки 404 точно так же как и любая другая страница на Вашем сайте.. никаких нюансов в коде странице нет..

Ну например создадим файл с именем 404.html

<html>
<head>
<title>Ошибка 404</title>
</head>
<body>
<img src="graphics/404.gif" alt="Ошибка 404">
<p>К сожалению, запрашиваемая Вами страница не найдена..</p>
<p>Почему?</p>
<ol>
<li>Ссылка, по которой Вы пришли, неверна.
<li>Вы неправильно указали путь или название страницы.
<li>Страница была удалёна со времени Вашего последнего посещения.
</ol>
<p>Для продолжения работы с сайтом Вы можете воспользоваться формой поиска по сайту:</p>
<form>
<input type="text" size="30">
<input type="submit" value="Поиск">
</form>
<p>..или перейти на:</p>
<ul>
<li><a href="#">Главную страницу сайта.</a>
<li><a href="#">Карту сайта</a>
</ul>
</body>
</html>

На самом деле это просто страничка "скелет" конечно же Вам следует создать свою собственную, полноценную страницу ошибки 404.

Создали? а вот теперь поговорим о нюансах..

Для того что бы в случае возникновения ошибки с кодом 404 посетитель переходил на только что созданную нами страницу, необходимо создать системный файл .htaccess который будет содержать в себе директиву: ErrorDocument 404 - это директива указывает серверу о том куда следует перенаправлять пользователя в случае возникновения ошибки 404.

Что это за файл такой спросите Вы?

Файл .htaccess (я не опечатался, пишется с точкой в начале имени и не использует никакого расширения) – дает возможность конфигурировать работу сервера в отдельных его директориях..

На данный файл может быть возложен ряд специфических задач.. например: устанавливать права доступа к файлам в папке, менять названия индексных файлов, глобально перенаправлять посетителей на другой сайт, запретить доступ к сайту с определённого ip адреса... и еще много всяких иногда очень полезных вещей может делать этот чудо файл.. в том числе может самостоятельно обрабатывать ошибки сервера - что нам собственно и нужно!

Однако углубляться во все подробности и тонкости мы не будем, а поговорим лишь о том, что нас интересует на данный момент.

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

Цитата

ErrorDocument 404 http://www.site.ru/404.html

И заливаем его на сервер в корневую папку сайта.

Ну только естественно сначала поменяйте в файле .htaccess ссылку http://www.site.ru/404.html на адрес Вашей собственной страницы которая должна будет открываться при возникновении ошибки 404.

Вот собственно и всё! теперь если Вы всё сделали правильно, при возникновении ошибки 404 будет загружаться Ваша "ошибочная" страница.

Сейчас огорчу тех кто располагает свой сайт на том или ином бесплатном хостинге.. Большинство бесплатных хостеров не дают доступа к файлу .htaccess так что создать страницу 404 на бесплатном хостинге вряд ли удастся.

P.S.Таким же способом с помощью файла .htaccess Вы можете обрабатывать и другие ошибки сервера:

статья была скопирована с другого сайта

  • Author
comment_124781
В 07.03.2017 в 02:41, aolko сказал:

Вы немного не поняли...

Screenshot_1.png

Этот метод установит для всех ошибок одну единственную страницу.

Мне же надо использовать для каждой ошибки - свою:
404 - http://syte.ru/404
403 - http://syte.ru/403
и т.п

В общем, как я понимаю, никто этим не замарочивался и всех стандартное сообщение. Фигово(((

@Silence, не в обиду, но я расцениваю ваш ответ (сообщение) как Спам :D

  • Author
comment_124782

В общем, поставил одну страницу для всех ошибок - чисто косметическую так сказать... (
Совсем не то - что я хотел, но, пусть хоть так, ибо стандартная не очень...

Внешний вид:

Screenshot_2.png

Стиль:

Спойлер

<style>
        #ipsLayout_contentArea #ipsLayout_contentWrapper .ipsBreadcrumb {
			display: none;
		}
      	.message-box {
            padding-top: 20px;
			text-align: center;
			padding-bottom: 50px;
        }
		.ipsType_huge {
  			font-size: 80px;
    		color: #8394A3;
          	padding-bottom: 20px; 
  		} 
        .message-box h1 {
            margin: 0;
            /*color: #e48b00;*/
          	color: #F5F5F5;
            font-size: 50px;
            line-height: 50px;
            /*text-shadow: 1px 1px 0 #fff, -1px -1px 0 #b66f00;*/
          	text-shadow: 1px 1px 0 #fff, -1px -1px 0 #C2C2C2;
        }

        .message-box h2 {
            /*margin: 0 0 20px;*/
            text-transform: uppercase;
            color: #38546C;
            font-size: 30px;
            line-height: 42px;
          	margin-top: 40px;
          	/*text-shadow: 0 0px 10px rgb(128, 128, 128);*/
          	padding-left: 10px;
    		padding-right: 10px;
        }

        .message-box span.notice {
            color: #909090;
        }

        .message-box p {
            font-size: 15px;
            margin: 20px 0;
        }

        .message-box a:link,
        .message-box a:visited {
            color: #003f78;
            text-transform: uppercase;
            text-decoration: underline;
        }

        .message-box a:hover {
            text-decoration: none;
        }
      	.Representative {
    		color: #F5F5F5;
			background: #304d66;
			padding: 10px 20px 10px 20px;	
		}
      	#ipsLayout_mainArea {
    padding: 0 !important;
}
</style>

 

HTML:

Спойлер

<div class="message-box">
  	<i class="fa fa-frown-o ipsType_huge"></i>
    <h1>К СОЖАЛЕНИЮ, ВОЗНИКЛА ОШИБКА</h1>

    <h2>{error_message}</h2>
    <span class="notice">Код ошибки: <strong>{error_code}</strong></span>
	<br>
    <p style="text-shadow: 0 0px 10px rgb(128, 128, 128);">Вернитесь <a href="javascript:history.back();">НАЗАД</a> или перейдите на <a href="/">Главную</a>
    </p>
</div>

<section class="Representative">
	<div class="ipsType_center">
		Здесь наш текст в "футере" про бла-бла-бла...
	</div>
</section>

 

Ну и вполне естественно, оборачиваем все это в <!--noindex-->

А вот как установить для каждой ошибки - свою (отдельную) страницу, остается загадкой... :(

  • Author
comment_124783

А вот теперь самый прикол... O.o

Создав страницу, с кодом внутри {error_code} и {error_message}, (где по идее нужно просто выводить соответствующий текст ошибки и его код) и как только мы столкнемся с ошибкой - они будут записаны в тело нашей страницы! И уже на всех последующих ошибках будет выводиться только этот текст!!!
Пхахахахах))))) Не, ну такой бредятины я давно не встречал... Что с этим движком не так??? Там в IPS совсем что ли идиоты сидят... >:(

comment_124785

Настройка страниц ошибок в .htaccess не принесёт никакого эффекта при включенном mod_rewrite(который убирает index.php из адреса)

  • 5 years later...
comment_181282
15 минут назад, aLEX49566 сказал:

Я себе такие поставил) дней 5 бился в познании высших сил космика

ну так тебе сюда. https://ipbmafia.ru/ips4docs/advanced-usage/themes-and-design/

создай в Базе знаний как и что делал, что создавал. в общем по полочкам

comment_181283
1 минуту назад, SlawkA сказал:

создай в Базе знаний как и что делал, что создавал. в общем по полочкам

Отдохну только немного))))

comment_181298
1 час назад, aLEX49566 сказал:

Может кто-ниб. скинуть error код с версии 4.6 ? Хочу кое что сравнить

001.thumb.PNG.be9246f4f2a7f7ede5b52607a6a3d2c2.PNG

Уже не надо. Сам разобрался 🥸

comment_181313
В 16.05.2022 в 21:04, aLEX49566 сказал:

Я себе такие поставил) дней 5 бился в познании высших сил космика 🤪

46B8D84D-02AA-4C5C-BA69-A76D83BC2284.jpeg.3c2da34083cc9917744f81caa7d644ec.jpegBEA1DBB7-A9BF-49AA-9350-F5DD83921994.thumb.jpeg.52eb414aae5562985ec247cd714570a9.jpegC824D48A-11C6-4A92-B9B4-9F74F28CADAA.thumb.jpeg.fc2da9658c2b0a3f261ded3d37741272.jpeg

33029898-639D-4DBD-850F-60434F912095.thumb.jpeg.fc61f171f700d9f9ead3232de610dc39.jpeg

Был бы вам очень признателен если бы вы расписали как вы сделали это. Лайк и спасибки гарантирую)))😁

comment_181314
5 минут назад, MikeWolf сказал:

Был бы вам очень признателен если бы вы расписали как вы сделали это. Лайк и спасибки гарантирую)))😁

Завтра постараюсь добраться)

comment_181357
14 часов назад, MikeWolf сказал:

Был бы вам очень признателен если бы вы расписали как вы сделали это. Лайк и спасибки гарантирую)))😁

Готово)

 

comment_181373
Только что, MikeWolf сказал:

Большое спасибо, оценил👍

Если знать как ставить, то дольше писать это все, чем делать  🤣

Извиняюсь за ошибки) глаза в кучку уже))

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.


Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.