Xeon303
Новичок
Отображение страницы Not Found и отправка кода 404
Столкнулся с такой проблемой:
Нужно средствами PHP выдать пользователю 404-ую ошибку "Not Found" и вывести при этом страницу сгенерированную через PHP. В Апаче я понимаю - там сервер отправляет 404 код клиенту и выводит строго определенную страницу с сервера.
Допустим, на серваке лежит скрипт index.php, который может принимать параметры, которые определяют выводимую страницу.
Например, index.php?id=2135
Допустим, если пользователь ввел неверный ID, то система должна выдать ошибку 404 и отобразить страницу.
Я делал так:
Вроде, все работает: PHP отправляет хедер со статусом 404, добавлет строку "Страница, которую вы запрашиваете, не существует!".
Когда я вводил адрес с неправильным ID в броузере Opera, то сервер возвращал код 404 и выводил мое сообщение, но когда я делал то же самое в Internet Explorer, то сервер сообщал 404 код, а страницу с ошибкой Internet Explorer выдавал свою:
Подскажите пожалуйста, заранее благодарен.
P.S. Если не знаете, то может быть посоветуете какую-нибудь программу с помощью которой можно отсылать запросы к серверу и просматиривать его ответ (шапки). Только telnet, пожалуйста, не предлагать, потому что я с ним уже намучался.
Я слышал, что че-то подобное есть... Хотелось бы сравнить ответы сервера при ошибке 404: ответ моего скрипта и Апача.
Столкнулся с такой проблемой:
Нужно средствами PHP выдать пользователю 404-ую ошибку "Not Found" и вывести при этом страницу сгенерированную через PHP. В Апаче я понимаю - там сервер отправляет 404 код клиенту и выводит строго определенную страницу с сервера.
Допустим, на серваке лежит скрипт index.php, который может принимать параметры, которые определяют выводимую страницу.
Например, index.php?id=2135
Допустим, если пользователь ввел неверный ID, то система должна выдать ошибку 404 и отобразить страницу.
Я делал так:
PHP:
header("HTTP/1.0 404 Not Found");
print "Страница, которую вы запрашиваете, не существует!";
Когда я вводил адрес с неправильным ID в броузере Opera, то сервер возвращал код 404 и выводил мое сообщение, но когда я делал то же самое в Internet Explorer, то сервер сообщал 404 код, а страницу с ошибкой Internet Explorer выдавал свою:
В чем причина этому - я не пойму. Может быть я header не тот отправляю? Когда Апач выводит страницу с ошибкой, то все нормально IE отображает не свою страницу, а ту, которую ему дает Апач. А в моем случае IE вставляет свою страницу!Невозможно найти страницу Возможно, эта страница была удалена, переименована, или она временно недоступна...
Подскажите пожалуйста, заранее благодарен.
P.S. Если не знаете, то может быть посоветуете какую-нибудь программу с помощью которой можно отсылать запросы к серверу и просматиривать его ответ (шапки). Только telnet, пожалуйста, не предлагать, потому что я с ним уже намучался.
Я слышал, что че-то подобное есть... Хотелось бы сравнить ответы сервера при ошибке 404: ответ моего скрипта и Апача.