как послать код состояния http

KOLANICH

Новичок
как послать код состояния http

допустим надо послать 402 Payment Required
 

Splurov

Новичок
У меня с давних времён используется такая функция:
PHP:
function header_status($header) {
	if (php_sapi_name() == 'cgi') {
		header('Status: ' . $header);
	}
	else {
		header('HTTP/1.1 ' . $header);
	}
}
Попытался выяснить откуда взялось это условие, нашёл http://bugs.php.net/bug.php?id=20943 там в комментариях есть ссылки на другие подобные баги.

Протестировал на apache 2.2:
php 5.3 module - работает только HTTP/1.1
php 5.2 cgi - работает любой вариант
php 4.4 cgi - работает любой вариант

Оставить это условие или на других апачах могут быть проблемы? Или везде давно исправили?
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
Splurov
прочитай-ка что такое CLI и какое отношение оно имеет к веб
http://php.net/manual/en/features.commandline.differences.php

-~{}~ 18.06.10 09:31:

mity
ты забыл еще один вариант!
header("HTTP/1.х 402 Payment Required");
:)
 

fixxxer

К.О.
Партнер клуба
> header('HTTP/1.1 ' . $header);

ссаными тряпками за такое положено

dimagolov вот правильно говорит
 

fixxxer

К.О.
Партнер клуба
я уже подробно расписывал пару раз.
если коротко то нельзя на 1.0 отвечать по 1.1, а 1.0 это частая ситуация в схеме фронтенд+бэкенд, которую ныне в том или ином виде используют все, у кого в голове не кю
 
Сверху