0 Пользователей и 1 Гость просматривают эту тему.
  • 12 Ответов
  • 2753 Просмотров
*

css_ufa

  • Захожу иногда
  • 179
  • 10 / 0
Всем привет!
 
Скидываю код для тех кто не хочет ставить лишние компоненты, такие как sh404SEF и т.д. для нагрузки и хочет собственную страницу Ошибка 404.
 
Данный код необходимо вставить в файл error.php.
 
Кодировка файла: UTF-8 (без BOM)
 
Путь файла: /templates/Ваш_шаблон/error.php
 
Код:
Код
<?php
/**
* @copyrightCopyright (C) 2005 - 2010 Open Source Matters. All rights reserved.
* @licenseGNU/GPL, see LICENSE.php
* Joomla! is free software. This version may have been modified pursuant
* to the GNU General Public License, and as distributed it includes or
* is derivative of works licensed under the GNU General Public License or
* other free or open source software licenses.
* See COPYRIGHT.php for copyright notices and details.
*/
 
// no direct access
defined( '_JEXEC' ) or die( 'Restricted access' );
 
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>">
<head>
</head>
<body>
<?php
if (($this->error->code) == '404') {
header("HTTP/1.0 404 Not Found"); /*добавлено после учёта комментариев - отправляет код ошибки для поисковика*/
echo file_get_contents('http://site.ru/Аллиас'); /*открывает страницу ошибок для пользователя. Код ответа сервера 404*/
exit;
}
?>
</body>
</html>

Для того чтобы ошибка 404 отображалась корректно, необходимо:
1. Создать меню, выводить его в шаблон не нужно
2. Создать в меню материал под ошибку 404 и ввести любой алиас, который Вам нравиться.
3. Данный Аллиас вставить сюда:

Код
echo file_get_contents('http://site.ru/Аллиас'); /*открывает страницу ошибок для пользователя. Код ответа сервера 404*/

Надеюсь Вам пригодится!

Если Вам помог, ставьте Плюс, пожалуйста ;)

Всем спасибо!
Всё что не делается, всё к лучшему (с). Так говорили великии люди.
*

css_ufa

  • Захожу иногда
  • 179
  • 10 / 0
Задавайте вопросы!

С удовольствием на них отвечу!
Всё что не делается, всё к лучшему (с). Так говорили великии люди.
*

css_ufa

  • Захожу иногда
  • 179
  • 10 / 0
Также несколько решений в интернете.
Способ 1 и 2
Способ 3
Всё что не делается, всё к лучшему (с). Так говорили великии люди.
*

SKYwoker

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
У меня такая проблема:
хочу чтобы страница 404 была полностью со своим дизайном. Сейчас у меня 404 сделана на подобии как в первом посте этой темы. Редирект типа ErrorDocument 404 http://www.yousite.ru/404.html не помогает, т.к. запрещен хостингом.

Есть ли какой-нибудь другой способ подвязать отдельный HTML файл?
В принциме наверняка сработает вариант если прописать редирект со страницы /index.php?option=com_content&amp;view=article&amp;id=11 на /404.html но думаю это кривой способ по ряду причин. Что скажете?
*

ELLE

  • Глобальный модератор
  • 4512
  • 883 / 0
*

SKYwoker

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
ELLE, что-то не то вы советуете (или просто это сильно сложно для меня). По крайней мере я не понял, как информация по ссылке может помочь.
*

ELLE

  • Глобальный модератор
  • 4512
  • 883 / 0
ELLE, что-то не то вы советуете (или просто это сильно сложно для меня). По крайней мере я не понял, как информация по ссылке может помочь.
как вариант отображения страницы 404 в своем дизайне (или я вашу фразу не так поняла) - то есть с теми же модулями, в том же оформлении что и другие страницы сайта (главная например), при этом код ответа будет корректно отдаваться и без всяких редиректов
*

SKYwoker

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
Нет. С точностью до наоборот.
Цитировать
Есть ли какой-нибудь другой способ подвязать отдельный HTML файл?
Т.е. я хочу чтобы при ошибке 404 выводилось содержание файла /404.html с исключительно его содержимим и дизайном. Независимо от дизайна сайта.
*

ELLE

  • Глобальный модератор
  • 4512
  • 883 / 0
Ну тогда я вообще никакой проблемы не вижу=)
Верстаем error.php как нам надо и профит!
Или как Курильщик советует всегда при ошибке 404 отправлять на 404.php, в случае допустим ошибки 500 отправлять на 500.php (все эти файлы также в шаблоне создаем)
*

SKYwoker

  • Осваиваюсь на форуме
  • 32
  • 0 / 0
Цитировать
Верстаем error.php как нам надо и профит!
error.php у меня вот такой:
Код
<?php
/**
 * @copyright Copyright (C) 2005 - 2010 Open Source Matters. All rights reserved.
 * @license GNU/GPL, see LICENSE.php
 * Joomla! is free software. This version may have been modified pursuant
 * to the GNU General Public License, and as distributed it includes or
 * is derivative of works licensed under the GNU General Public License or
 * other free or open source software licenses.
 * See COPYRIGHT.php for copyright notices and details.
 */

// no direct access
defined( '_JEXEC' ) or die( 'Restricted access' );
?>
<?php
  header("HTTP/1.1 404 Not Found");
  echo file_get_contents(JURI::root().'/index.php?option=com_content&amp;view=article&amp;id=11');
?>
И все что он делает - это при возникновении ошибки выводит страницу /index.php?option=com_content&amp;view=article&amp;id=11 в шаблоне сайта.
Что тут можно верстать?

Цитировать
Или как Курильщик советует всегда при ошибке 404 отправлять на 404.php, в случае допустим ошибки 500 отправлять на 500.php (все эти файлы также в шаблоне создаем)
Вот вот. Этого я и хочу. Как можно реализовать где-нибудь описано?
*

css_ufa

  • Захожу иногда
  • 179
  • 10 / 0
У меня такая проблема:
хочу чтобы страница 404 была полностью со своим дизайном. Сейчас у меня 404 сделана на подобии как в первом посте этой темы. Редирект типа ErrorDocument 404 http://www.yousite.ru/404.html не помогает, т.к. запрещен хостингом.

Есть ли какой-нибудь другой способ подвязать отдельный HTML файл?
В принциме наверняка сработает вариант если прописать редирект со страницы /index.php?option=com_content&amp;view=article&amp;id=11 на /404.html но думаю это кривой способ по ряду причин. Что скажете?
Вы можете использовать свою страницу, которая будет встроенная в дизайн сайта! Я все это описал в 1 посте!
UPDATE
Понял, что уже не надо!)
Всё что не делается, всё к лучшему (с). Так говорили великии люди.
*

alsa

  • Осваиваюсь на форуме
  • 26
  • 0 / 0
Добрый день! Помогите, пожалуйста, решить проблему... страница с 404 работает только если вписываем неправильный url вне раздела, стоит зайти в раздел "Галерея" или любой другой, вместо страницы с 404 выпадает белый экран. Как это решить?
*

kolio

  • Захожу иногда
  • 91
  • 11 / 4
сделал 404 страницу, на сайте SEF не юзается
при вводе вместо
http://________/index.php?option=com_content&view=article&id=5419&catid=59&Itemid=15
явно ошибочную страницу
http://________/index.php?option=com_conte5nt&view=article&id=5419&catid=59&Itemid=15

выдает страницу ошибки, и 404й код

НО! если ввести
например  http://_________/sdfsdfsdf/sdfsdfsdf.html
выдает главную страницу сайта, и код 200

может кто знает, это настройки сайта? или хостер? или еще чего-то?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Ошибка в компоненте CKForms

Автор Vas80

Ответов: 9
Просмотров: 200
Последний ответ 22.04.2019, 13:34:48
от sivers
Ошибка #1050 при переносе базы данных на хостинг

Автор Ksen

Ответов: 6
Просмотров: 13420
Последний ответ 30.03.2019, 12:02:52
от nontad
Ошибка Fatal error: Allowed memory size of 73400320 bytes exhausted

Автор Andre109

Ответов: 1
Просмотров: 788
Последний ответ 03.12.2018, 01:29:56
от voland
Ошибка при загрузке модулей:MySQL server has gone away

Автор svskach

Ответов: 13
Просмотров: 3803
Последний ответ 31.01.2018, 10:56:15
от Evrokub
Вместо админки - ошибка 404

Автор goshanchiik

Ответов: 4
Просмотров: 585
Последний ответ 04.08.2017, 22:37:23
от voland