2014-02-01 6 views
1

У меня есть страница в php, что я не хочу доступа к ней, кроме моего приложения. если нет предопределенного сеанса, я отправил местоположение заголовка.Зачем отправлять заголовок со статусом?

Тогда я думал, что с помощью

header("HTTP/1.1 401 Unauthorized"); 
exit(); 

Все работает хорошо, и я могу добавить свой собственный «Несанкционированное сообщение» Я хочу. Но почему? Я могу легко отправить любой заголовок (по умолчанию будет 200) по-прежнему с моим «Несанкционированным сообщением».

Какая точка указывает браузеру код состояния, если он ничего не делает?

Редактировать: Я хочу объяснить себя лучше. Не имеет значения, если это 404, 403 или 500. Браузер не будет показывать какое-либо сообщение сам, и если я не буду использовать выход, он будет отображать остальную часть страницы. так как это помогает мне отправить заголовок?

+2

Если сказать браузеру код состояния, он __will__ сделать что-то, что будет говорить что их доступ к странице несанкционирован: аналогично, он будет указывать другим методам доступа (например, curl) то же самое .... но вы не должны просто отправлять ответ 401, но также включать поле заголовка WWW-Authenticate содержащий вызов, применимый к запрашиваемому ресурсу –

+0

Гил, я считаю, что ваш ответ лежит внутри файла '.htaccess'. –

+0

@MarkBaker заголовок, который я отправил, показывает белую страницу. и если я не буду использовать exit(), он покажет остальную часть страницы – gil

ответ

2

Код состояния 401 инициирует всплывающее окно аутентификации на стороне клиента. (Заголовок WWW-Authenticate также необходим для этого ...)

Детали, например, здесь:

http://en.wikipedia.org/wiki/Basic_access_authentication

Смежные вопросы