Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
| | | | |
У древних версий IE был глюк при размере ответа < 512 байт... 02.04.04 07:40 Число просмотров: 1489
Автор: Killer{R} <Dmitry> Статус: Elderman
|
> $otvet=" > HTTP/1.1 200 OK\r\n > Content-Type: text/html\r\n > Content-Length: 5\r\n > \r\n > hello\n\n > "; Вообщето Content-Length: должен включать в себя и последние \n\n
|
<networking>
|
минимальный HTTP пакет 31.03.04 07:03
Автор: makeworld Статус: Member Отредактировано 31.03.04 07:38 Количество правок: 1
|
Какие минимальные поля должны присутствовать в HTTP пакете (только payload TCP пакета), чтобы он был нормально обработан браузером?
|
|
Сам GET (или POST) 31.03.04 10:41
Автор: amirul <Serge> Статус: The Elderman
|
> Какие минимальные поля должны присутствовать в HTTP пакете > (только payload TCP пакета), чтобы он был нормально > обработан браузером? И поле Host: если есть виртуальные хосты
|
| |
я имел ввиду ответ сервера. 01.04.04 06:14
Автор: makeworld Статус: Member Отредактировано 01.04.04 06:16 Количество правок: 1
|
я имел ввиду ответ сервера.
если представить структуру ответа схемой ниже, то при наличи в ответе Status Line, нескольких полей из entity-header (Content-*) и message-body многие браузеры выдают ошибку, а, например, мозилла пытается долго и безрезультатно загрузить страницу, но если по время загрузки нажать stop, message-body отобразится в окне браузера.
Response = Status-Line
*(( general-header
| response-header
| entity-header ) CRLF)
CRLF
[ message-body ]
---
|
| | |
У древних версий IE был глюк при размере ответа < 512 байт... 01.04.04 16:21
Автор: NKritsky <Nickolay A. Kritsky> Статус: Elderman
|
У древних версий IE был глюк при размере ответа < 512 байт. Но может быть все проще? Может ты просто кривой ответ сгенерил? Приведи свой ответ.
|
| | | |
У древних версий IE был глюк при размере ответа < 512 байт... 02.04.04 07:11
Автор: makeworld Статус: Member
|
> У древних версий IE был глюк при размере ответа < 512 > байт. Но может быть все проще? Может ты просто кривой ответ > сгенерил? Приведи свой ответ.
вот кусочек кода на перле:
$otvet="
HTTP/1.1 200 OK\r\n
Content-Type: text/html\r\n
Content-Length: 5\r\n
\r\n
hello\n\n
";
|
| | | | |
Лучше так 02.04.04 18:16
Автор: NKritsky <Nickolay A. Kritsky> Статус: Elderman
|
> вот кусочек кода на перле: > $otvet=" > HTTP/1.1 200 OK\r\n > Content-Type: text/html\r\n > Content-Length: 5\r\n > \r\n > hello\n\n > ";
$otvet="HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 7
hello
";
|
| | | | | |
вот так отлично сработало: 03.04.04 07:45
Автор: makeworld Статус: Member
|
$otvet="HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 7
hello
";
|
| | | | | | |
а проблема была именно в поле Content-Length! 08.04.04 12:21
Автор: nemo Статус: Незарегистрированный пользователь
|
|
| | | | |
У древних версий IE был глюк при размере ответа < 512 байт... 02.04.04 07:40
Автор: Killer{R} <Dmitry> Статус: Elderman
|
> $otvet=" > HTTP/1.1 200 OK\r\n > Content-Type: text/html\r\n > Content-Length: 5\r\n > \r\n > hello\n\n > "; Вообщето Content-Length: должен включать в себя и последние \n\n
|
| | | | | |
У древних версий IE был глюк при размере ответа < 512 байт... 02.04.04 08:49
Автор: makeworld Статус: Member
|
> Вообщето Content-Length: должен включать в себя и последние > \n\n tnx, но проблема все равно осталось..
|
| | | | | | |
У древних версий IE был глюк при размере ответа < 512 байт... 02.04.04 09:24
Автор: Killer{R} <Dmitry> Статус: Elderman Отредактировано 02.04.04 09:33 Количество правок: 1
|
Вот кусок скрипта - простейшего ХТТП сервера, правда для моей проги и на паскале. С ИЕ и оперой работает на ура. С мозиллой тоже работает тока посколько я ее не юзаю то не могу сказать с какой именно версией оно работало:
ct:='application/octet-stream';
if(pos('.gif',ts)<>0)then ct:='image/gif';
if(pos('.bmp',ts)<>0)then ct:='image/bmp';
if(pos('.jpg',ts)<>0)or(pos('.jpeg',ts)<>0) then ct:='image/jpeg';
if(pos('.htm',ts)<>0)or(pos('.txt',ts)<>0) then ct:='text/html';
while(recvln<>'')do;
ts:='http\'+ts;
f:=openfile(ts,1);
if(f<>0)then
begin
j:=getfilesize(f,g);
closefile(f);
send('HTTP/1.1 200 OK'+chr(13)+chr(10));
end else
begin
j:=19;
send('HTTP/1.1 503 Service Unavailable'+chr(13)+chr(10));
end;
send('Content-Length: '+inttostr(j)+chr(13)+chr(10));
send('CONNECTION: keep-alive'+chr(13)+chr(10));
send('Content-Type: '+ct+chr(13)+chr(10));
send('Server: NetView HTTP listener script'+chr(13)+chr(10)+chr(13)+chr(10));
if(f=0)then send('Resource not found.') else
begin
f:=openfile(ts,1);
if(f<>0)then
begin
while(readfile(f,10000,s)<>0)do begin waitme; send(s); end;
closefile(f);
end;
end;
end;
end;
end.
|
|
|