alekssn: Да, это нужно в header в нужном месте прописать. Если в PHP, то так:
header('Status: 404 Not Found', true, 404);
Может у Вас сервер уже выдает 404 и не нужно ничего прописывать, проверьте - зайдите на несуществующую страницу и просмотрите лог-файлы сервера
Пока сайт на локальной машине. Он еще в стадии разработки. И навряд ли сервер будет выдавать ошибку 404, ведь страница ошибка, с точки зрения логики программы, и другие страницы сайта - абсолютно равноправны. Значит, надо вводить heder. Но дело в том, что у меня страница собирается на лету: извлекается шаблон к нему добавляется контент. Ее как таковой не существует - она виртуальная! Как же мне прописать хедер? Проще говоря, в процессе создания страницы - она хранится в переменной. А потом, просто, выводится echo'м. Или пере выводом запустить этот хедер?
alekssn: Если по этим адресам выдается ответ сервера 404, то нормально. Вообще, робот может найти эту несуществующую страницу только если на нее будет поставлена какая-либо ссылка с Вашего сайта или с другого. Либо кто-то добавит страницу в addurl.
Что значит выдается ошибка 404? Это в контенте или как-то надо в хедер прописывать? Объясните пожалуйста.
alekssn: Странный вопрос. Поисковики, как правило, индексируют сначала главную страницу сайта (http://site.ru или http://site.ru/ - без разницы, для поисковика это одно и то же). С www или без - это как Вы ссылки поставите. А потом, по внешним и внутренним ссылкам индексируют другие страницы Вашего сайта. А всякие index/, index.php лучше уберите, чтобы лишний раз не дублировать страницы сайта.
Всякие index/, index.php мне убирать некуда, у меня нет таких ссылок на самом сайте. Из страниц сайта будет только одна ссылка на главную в виде /. Я, просто, говорил, что у меня главная страница сайта может быть доступна по таким адресам.
Понял. Значит адрес каждой страницы должен быть уникален.
И еще такой вопросик. На сайте страницы доступны по своим адресам, а если вводится адрес не существующей страницы, то пользователь по этому адресу получает уведомление об ошибке. Все сделано на PHP. Но сточки зрения ссылки на такую страницу - она существует. Не важно что, там, хоть и ошибка. Получается, что мой сайт содержит миллионы и миллиарды страниц с разными адресами но с одним контентом - ошибка: страница не найдена. Это нормально?
Да не знаю какой хостинг. Я думал, что это из-за мод_реврайта, получается что он здесь не причем?
Спасибо. Делаю транслитерацию!
Ну считайте себя русскоязычными пользователями. Как по вашему удобней?
Я имел ввиду в шапке. DOCTYPE и прочее.
Хорошо. Спасибо вам.
Да, это нужно в header в нужном месте прописать. Если в PHP, то так:
header('Status: 404 Not Found', true, 404);Может у Вас сервер уже выдает 404 и не нужно ничего прописывать, проверьте - зайдите на несуществующую страницу и просмотрите лог-файлы сервера
Пока сайт на локальной машине. Он еще в стадии разработки. И навряд ли сервер будет выдавать ошибку 404, ведь страница ошибка, с точки зрения логики программы, и другие страницы сайта - абсолютно равноправны. Значит, надо вводить heder. Но дело в том, что у меня страница собирается на лету: извлекается шаблон к нему добавляется контент. Ее как таковой не существует - она виртуальная! Как же мне прописать хедер? Проще говоря, в процессе создания страницы - она хранится в переменной. А потом, просто, выводится echo'м. Или пере выводом запустить этот хедер?
Если по этим адресам выдается ответ сервера 404, то нормально. Вообще, робот может найти эту несуществующую страницу только если на нее будет поставлена какая-либо ссылка с Вашего сайта или с другого. Либо кто-то добавит страницу в addurl.
Что значит выдается ошибка 404? Это в контенте или как-то надо в хедер прописывать? Объясните пожалуйста.
Странный вопрос. Поисковики, как правило, индексируют сначала главную страницу сайта (http://site.ru или http://site.ru/ - без разницы, для поисковика это одно и то же). С www или без - это как Вы ссылки поставите. А потом, по внешним и внутренним ссылкам индексируют другие страницы Вашего сайта. А всякие index/, index.php лучше уберите, чтобы лишний раз не дублировать страницы сайта.
Всякие index/, index.php мне убирать некуда, у меня нет таких ссылок на самом сайте. Из страниц сайта будет только одна ссылка на главную в виде /. Я, просто, говорил, что у меня главная страница сайта может быть доступна по таким адресам.
А вот http://site.ru/page_1/ и http://site.ru/page_1 - не одно и тоже. Я бы поставил на одной из них либо редирект на другую, либо 404 ошибку
Понял. Значит адрес каждой страницы должен быть уникален.
И еще такой вопросик. На сайте страницы доступны по своим адресам, а если вводится адрес не существующей страницы, то пользователь по этому адресу получает уведомление об ошибке. Все сделано на PHP. Но сточки зрения ссылки на такую страницу - она существует. Не важно что, там, хоть и ошибка. Получается, что мой сайт содержит миллионы и миллиарды страниц с разными адресами но с одним контентом - ошибка: страница не найдена. Это нормально?
Ни черта не понял.
Спасибо и на этом. А текст там действительно всю красоту портит...