Проблема с 404

Добрый день, коллеги. Подскажите, как сделать, чтобы при попадании пользователя на страницу 404 его автоматически перекидывало на главную страницу блога??? Или через .htaccess как-то или по другому. Как это сделать???

Вопрос – а зачем так делать? Нужно дать пользователю инф-ю, что он попал на страницу, которой не существует. И уже на ней дать возможность самому пользователю выбрать что делать дальше.

Если у вас есть какой-то свой, сакральный смысл – расскажите о нем.

Если мне так нужно, значит, я уже подумал )) Мне интересны технические способы, а не аналитические ))

Простейший технический способ – на 404 странице добавить мета-тег:

<META HTTP-EQUIV="Refresh" CONTENT="3; URL=http://www.site.ru">

Если данная команда указана в заголовке документа, то через 3 секунд браузер автоматически заменяет текущий документ на документ, указанный атрибутом URL.

У меня вообще не было страницы 404. Я создал ее и прописал там:

<?php

//Simple Redirect for WordPress.
//Christopher Carey
//301 Redirect for WordPress
//мой_сайт.ru
header("HTTP/1.1 301 Moved Permanently");
header("Location: ".get_bloginfo(‘url’));

exit();

?>

Но когда я захожу на страницу, которой нет, то ничего не меняется и никуда не переадресовывается. Пробовал ставить мета тег, что вы дали, но переадресации не происходит. Закачивал файл 404.php и в корень сайта и в папку темы, но ничего не меняется.

1. 404.php должен быть расопложен в папке с темой.

2. Приведенный код не вызывает ошибки? У вас там перевод каретки после <?php

3. вот тут подробно рассказывается как создавать страницу 404.php – http://codex.wordpress.org/Creating_an_Error_404_Page

1. 404.php должен быть расопложен в папке с темой.

Он расположен в папке с темой

2. Приведенный код не вызывает ошибки? У вас там перевод каретки после <?php

Я не знаю. Пишет вот что:
Not Found

The requested URL /адрес страницы/ was not found on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

3. вот тут подробно рассказывается как создавать страницу 404.php - http://codex.wordpress.org/Creating_an_Error_404_Page

Я заходил уже сюда, просто в английском не сильно. Особенно, что касается таким мелочей, как возня в коде ))

Всё просто. И описано подробно в документации к WordPress

1. Создаешь файл в папке темы 404.php
2. Наполняешь его нужным содержанием
3. в файле .htaccess прописываешь

ErrorDocument 404 /index.php?error=404

ну и все дела…

Всё просто. И описано подробно в документации к WordPress

1. Создаешь файл в папке темы 404.php
2. Наполняешь его нужным содержанием
3. в файле .htaccess прописываешь

ErrorDocument 404 /index.php?error=404

ну и все дела...

О! То, что доктор прописал! В .htaccess прописал ErrorDocument 404 /index.php?error=404 и все заработало!!! Спасибо большое!!!

Рад, что помогло. Я в своё время тоже настрадался. Искал по сайтам и блогам, читал всякую хрень, пока не решил поискать в документации WordPress Codex.

Я просто подумал, что пускай лучше будет на главную сразу перебрасывать да и все. Спасибо еще раз!

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

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

А как все это сделать?

вот так выглядит моя 404.php

можно лепить там что хочешь: архив статей, архив рубрик, избранное… поиск через гугль, поискть через яндекс… нет предела совершенству

<?php get_header(); ?>

<div id="content" class="narrowcolumn">
<h2 class="center"><?php _e(‘Error 404 – Not Found’, ‘magazine-basic’); ?></h2>
</div>

<b><?php _e(‘Search by Month:’, ‘magazine-basic’); ?></b>
<ul>
<?php wp_get_archives(‘type=monthly’); ?>
</ul>
<b><?php _e(‘Search by Category:’, ‘magazine-basic’); ?></b>
<ul>
<?php wp_list_cats(‘sort_column=name’); ?>
</ul>

<script type="text/javascript">
var GOOG_FIXURL_LANG = ‘ru’;
var GOOG_FIXURL_SITE = ‘http://www.мойдоментипа.ком’
</script>
<script type="text/javascript"
src="http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js">
</script>

<?php get_footer(); ?>

Anonymous
Отправить
Ответ на: