1. Уважаемые пользователи, прежде чем ответить в теме или создать новую,
    внимательно ознакомьтесь с правилами раздела

    Кому лень работать или руки не оттуда - пользуйтесь услугами специалистов
  2. Не задавайте глупых вопросов "Посоветуйте какой-нибудь компонент.."

    Есть JED!!! Ищите там!!!

Обсуждение Собственная страница - Ошибка 404

Тема в разделе "Joomla", создана пользователем Css_Ufa, 17 июн 2012.

Информация :
  • Уважаемые пользователи, прежде чем ответить в теме или создать новую, внимательно ознакомьтесь с правилами раздела
  • Не задавайте глупых вопросов "Посоветуйте какой-нибудь компонент.." Есть JED!!! Ищите там!!!
  • Аналоги ищите там же - на JED!!!
  • Новая версия? - У кого будет - тот выложит!
Модераторы: arman29, DMS, Genk0
  1. Css_Ufa

    Css_Ufa

    Регистр.:
    25 ноя 2008
    Сообщения:
    542
    Симпатии:
    323
    Всем привет!

    Скидываю код для тех кто не хочет ставить лишние компоненты, такие как 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*/
    Надеюсь Вам пригодится!

    З.Ы.:
    Также несколько решений в интернете.
    Способ 1 и 2
    Способ 3
     
  2. nikki

    nikki Постоялец

    Регистр.:
    21 май 2012
    Сообщения:
    83
    Симпатии:
    4
    во многих шаблонах уже есть своя 404, особенно в j 2.5
     
  3. Css_Ufa

    Css_Ufa

    Регистр.:
    25 ноя 2008
    Сообщения:
    542
    Симпатии:
    323
    Не во всех шабах встречал нормальную страницу 404.

    В данном случае страница 404 идет для версии 1.5
     
  4. Extalionez

    Extalionez Клоун

    Заблокирован
    Регистр.:
    21 авг 2008
    Сообщения:
    368
    Симпатии:
    185
    и куда этот код вставлять?
     
    lfybzk и Css_Ufa нравится это.
  5. Css_Ufa

    Css_Ufa

    Регистр.:
    25 ноя 2008
    Сообщения:
    542
    Симпатии:
    323
    Данный код необходимо вставить в файл error.php.

    Кодировка файла: UTF-8 (без BOM)

    Путь файла: /templates/Ваш_шаблон/error.php

    Также обновил 1 пост!
     
  6. Extalionez

    Extalionez Клоун

    Заблокирован
    Регистр.:
    21 авг 2008
    Сообщения:
    368
    Симпатии:
    185
    А если error не 404?
     
  7. Css_Ufa

    Css_Ufa

    Регистр.:
    25 ноя 2008
    Сообщения:
    542
    Симпатии:
    323
    Имеете ввиду 403, 500?

    Данная страница только под 404 страницу заточена!
     
  8. nikki

    nikki Постоялец

    Регистр.:
    21 май 2012
    Сообщения:
    83
    Симпатии:
    4
    А под 500 вообще принято свою делать? У меня всегда хостера страничка выпадала. Или вообще надо?
     
  9. binh

    binh

    Регистр.:
    6 сен 2011
    Сообщения:
    267
    Симпатии:
    75
    Есть еще один вариантец создания креативных 404 страничек:
    Создаем материал с описанием ошибки 404(сплошное творчество), не присваиваем его к категориям и (для 1.5) к разделам. После сохранения замонимаем ID страници, замем в папке templates/system вытираем содержимое файла error.php и вставлем в него следующий код
    Код:
     <?php
    defined('JPATH_BASE') or die();
    echo file_get_contents(JURI::root().'/index.php?option=com_content&view=article&id=СМОТРИ НОМЕР СВОЕГО ID');
    ?>
    где, СМОТРИ НОМЕР СВОЕГО ID - идентификатор вашего материала.
     
  10. Css_Ufa

    Css_Ufa

    Регистр.:
    25 ноя 2008
    Сообщения:
    542
    Симпатии:
    323
    Под ошибку 500, в основном не делают. А так ты можешь сделать свои страницы для всех видов ошибок!
    И будет у тебя отображатся ошибка как
    site.ru/index.php?option=com_content&view=article&id=СМОТРИ НОМЕР СВОЕГО ID

    Вот чтобы такого не было вот что нужно сделать:
    Создаем меню и туда вставляем материал для ошибки 404 и будет у тебя отображаться ошибка 404 как нормальный URL

    Добавил подробную инструкцию в 1 пост