Michiel de Roo
13/09/04, 13:05
Iemand een idee waarom het volgende niet werkt:
wget --header "User-Agent: none" www.microsoft.com
Ik krijg een ERROR 400: Bad Request. Het probleem lijkt specifiek te zijn
voor IIS servers. Zonder de header gaat het wel goed. Op een site met een
apache server gaat het met header wel goed:
wget --header "User-Agent: none" www.2see.nl
gr, michiel.
Daniel Tryba
13/09/04, 14:45
Michiel de Roo <yourlove@welovespam.nl> wrote:
> Iemand een idee waarom het volgende niet werkt:
>
> wget --header "User-Agent: none" www.microsoft.com
>
> Ik krijg een ERROR 400: Bad Request. Het probleem lijkt specifiek te zijn
> voor IIS servers. Zonder de header gaat het wel goed. Op een site met een
> apache server gaat het met header wel goed:
>
> wget --header "User-Agent: none" www.2see.nl
Hmmmm, idt lijkt zeer sterk op een "doktor als daar druk doet het pijn"
vraag. Waarom zou je dan met de UA prutsen?
Maar men nemen een packetsniffer en merke het volgende op:
Gewone wget:
>>GET / HTTP/1.0
>>User-Agent: Wget/1.9.1
>>Host: www.microsoft.com
>>Accept: */*
>>Connection: Keep-Alive
>>
>>HTTP/1.1 200 OK
>>Cache-Control: public
>>Content-Length: 13636
>>Content-Type: text/html
>>Expires: Mon, 13 Sep 2004 14:33:46 GMT
>>Last-Modified: Mon, 13 Sep 2004 11:47:06 GMT
>>Server: Microsoft-IIS/6.0
>>X-AspNet-Version: 1.1.4322
>>P3P: CP="ALL IND DSP COR ADM CONo CUR CUSo IVAo IVDo PSA PSD TAI TELo OUR SAMo CNT COM INT NAV ONL PHY PRE PUR UNI"
>>X-Powered-By: ASP.NET
>>Date: Mon, 13 Sep 2004 12:27:39 GMT
>>Connection: keep-alive
wget --header "User-Agent: none" www.microsoft.com
>>GET / HTTP/1.0
>>User-Agent: Wget/1.9.1
>>Host: www.microsoft.com
>>Accept: */*
>>Connection: Keep-Alive
>>User-Agent: none
>>
>>HTTP/1.1 400 Bad Request
>>Content-Type: text/html
>>Date: Mon, 13 Sep 2004 12:25:41 GMT
>>Connection: close
>>Content-Length: 42
>>
>><h1>Bad Request (Invalid Header Name)</h1>
lynx -source --useragent=none http://www.microsoft.com
>>GET / HTTP/1.0
>>Host: www.microsoft.com
>>Accept: text/html, text/plain, application/vnd.sun.xml.writer, application/vnd.sun.xml.writer.global, application/vnd.stardivision.writer, application/vnd.stardivision.writer-global, application/x-starwriter, application/vnd.sun.xml.writer.template
>>Accept: application/vnd.sun.xml.calc, application/vnd.stardivision.calc, application/x-starcalc, application/vnd.sun.xml.calc.template, application/vnd.sun.xml.impress, application/vnd.stardivision.impress, application/vnd.stardivision.impress-packed
>>Accept: application/x-starimpress, application/vnd.sun.xml.impress.template, application/vnd.sun.xml.draw, application/vnd.stardivision.draw, application/x-stardraw, application/vnd.sun.xml.draw.template, application/vnd.sun.xml.math
>>Accept: application/vnd.stardivision.math, application/x-starmath, application/x-java-jnlp-file, video/mpeg, application/pdf, video/x-msvideo, video/x-mplayer2, video/x-ms-asf, video/x-ms-wmv, video/x-ms-wma, application/x-bittorrent
>>Accept: application/x-troff-man, application/postscript, application/ghostview, image/avs, image/bie, image/x-ms-bmp, image/cmyk, image/dcx, image/eps, image/fax, image/fits, image/gif, image/gray, image/gradation, image/hdf, image/jpeg, image/pjpeg
>>Accept: image/map, image/miff, image/mono, image/mtv, image/x-portable-bitmap, image/pcd, image/pcx, image/pdf, image/x-portable-graymap, image/pict, image/png, image/x-portable-anymap, image/x-portable-pixmap, image/ps, image/rad, image/x-rgb
>>Accept: image/rgba, image/rla, image/rle, image/sgi, image/sun-raster, image/targa, image/tiff, image/uyvu, image/vid, image/viff, image/x-xbitmap, image/x-xpixmap, image/x-xwindowdump, image/yuv, image/fax-g3, image/x-eps, image/x-jng, image/x-xbm
>>Accept: video/x-mng, image/bmp, image/x-xpm, message/partial, message/external-body, text/xml, application/x-ogg, application/ogg, audio/mpeg, audio/x-mpegurl, audio/x-ms-wax, audio/x-ms-wma, audio/x-pls, audio/x-scpls, audio/x-wav, video/quicktime
>>Accept: video/x-mpeg2, video/x-mpeg, video/x-ms-afs, video/x-ms-wmx, video/x-ms-wvx, audio/mpegurl, audio/x-mp2, audio/x-mp3, audio/x-pn-realaudio, audio/vnd.rn-realaudio, application/smil, audio/x-pn-mp3, application/x-tar, application/x-gtar
>>Accept: audio/x-ogg, audio/prs.sid, application/x-dvi, text/richtext, text/enriched, image/x-bmp, image/pm, text/*, application/x-debian-package, audio/basic, */*;q=0.01
>>Accept-Encoding: gzip, compress
>>Accept-Language: en
>>User-Agent: none
>>
>>HTTP/1.1 200 OK
>>Cache-Control: public
>>Content-Length: 13636
>>Content-Type: text/html
>>Expires: Mon, 13 Sep 2004 15:11:11 GMT
>>Last-Modified: Mon, 13 Sep 2004 12:24:31 GMT
>>Server: Microsoft-IIS/6.0
>>X-AspNet-Version: 1.1.4322
>>P3P: CP="ALL IND DSP COR ADM CONo CUR CUSo IVAo IVDo PSA PSD TAI TELo OUR SAMo CNT COM INT NAV ONL PHY PRE PUR UNI"
>>X-Powered-By: ASP.NET
>>Date: Mon, 13 Sep 2004 12:25:30 GMT
>>Connection: close
MAW IIS valt over de dubbele UA header... het is wellicht ook toevallig
dat het hier om een asp.net gebeuren gaat, die doen schijnbaar dingen
als browsersniffing.
--
Daniel Tryba
Michiel de Roo
13/09/04, 16:55
Daniel Tryba wrote:
> Michiel de Roo <yourlove@welovespam.nl> wrote:
>
>>Iemand een idee waarom het volgende niet werkt:
>>
>>wget --header "User-Agent: none" www.microsoft.com
>>
>>Ik krijg een ERROR 400: Bad Request. Het probleem lijkt specifiek te zijn
>>voor IIS servers. Zonder de header gaat het wel goed. Op een site met een
>>apache server gaat het met header wel goed:
>>
>>wget --header "User-Agent: none" www.2see.nl
>
>
> Hmmmm, idt lijkt zeer sterk op een "doktor als daar druk doet het pijn"
> vraag. Waarom zou je dan met de UA prutsen?
Ah, nee. Ik had het probleem in een andere context. Ik heb een botje
geschreven en zou me ook graag als zodanig identificeren. Maar voor de
vraag hier had ik het probleem even 'uitgekleed'.
>
> Maar men nemen een packetsniffer en merke het volgende op:
>
> Gewone wget:
>
>>>GET / HTTP/1.0
>>>User-Agent: Wget/1.9.1
>>>Host: www.microsoft.com
>>>Accept: */*
>>>Connection: Keep-Alive
>>>
>>>HTTP/1.1 200 OK
>>>Cache-Control: public
[...]
>
>
> MAW IIS valt over de dubbele UA header... het is wellicht ook toevallig
> dat het hier om een asp.net gebeuren gaat, die doen schijnbaar dingen
> als browsersniffing.
>
Zo ver was ik nog niet gekomen. Ik zal eens gaan uitzoeken of ik die
dubbele header kan voorkomen. Bedankt voor de hulp.
Michiel.
Daniel Tryba
13/09/04, 17:05
Michiel de Roo <yourlove@welovespam.nl> wrote:
>> MAW IIS valt over de dubbele UA header... het is wellicht ook toevallig
>> dat het hier om een asp.net gebeuren gaat, die doen schijnbaar dingen
>> als browsersniffing.
>>
>
> Zo ver was ik nog niet gekomen. Ik zal eens gaan uitzoeken of ik die
> dubbele header kan voorkomen. Bedankt voor de hulp.
man wget /agent doet wonderen:
-U agent-string
--user-agent=agent-string
Identify as agent-string to the HTTP server.
The HTTP protocol allows the clients to identify themselves using a
"User-Agent" header field. This enables distinguishing the WWW
software, usually for statistical purposes or for tracing of proto-
col violations. Wget normally identifies as Wget/version, version
being the current version number of Wget.
Een simpele RTFM dus :)
--
Daniel Tryba
Michiel de Roo
13/09/04, 17:05
Daniel Tryba wrote:
> Michiel de Roo <yourlove@welovespam.nl> wrote:
>
>>>MAW IIS valt over de dubbele UA header... het is wellicht ook toevallig
>>>dat het hier om een asp.net gebeuren gaat, die doen schijnbaar dingen
>>>als browsersniffing.
>>>
>>
>>Zo ver was ik nog niet gekomen. Ik zal eens gaan uitzoeken of ik die
>>dubbele header kan voorkomen. Bedankt voor de hulp.
>
>
> man wget /agent doet wonderen:
>
> -U agent-string
> --user-agent=agent-string
> Identify as agent-string to the HTTP server.
>
> The HTTP protocol allows the clients to identify themselves using a
> "User-Agent" header field. This enables distinguishing the WWW
> software, usually for statistical purposes or for tracing of proto-
> col violations. Wget normally identifies as Wget/version, version
> being the current version number of Wget.
>
> Een simpele RTFM dus :)
Klopt...
Maar het originele probleem had ik in een PHP script. Het zou me niet
verbazen als die ook dubbele headers zit te sturen. Ik had alleen met wget
zitten testen om te kijken wat het probleem nu eigenlijk was.
Daniel Tryba
13/09/04, 17:25
Michiel de Roo <yourlove@welovespam.nl> wrote:
>> Een simpele RTFM dus :)
>
> Klopt...
>
> Maar het originele probleem had ik in een PHP script. Het zou me niet
> verbazen als die ook dubbele headers zit te sturen. Ik had alleen met wget
> zitten testen om te kijken wat het probleem nu eigenlijk was.
Show us the source... het lynx voorbeeld doet geloven dat 'UA: none'
geen probleem is.
BTW mochten je pogingen gebruik maken van de http(s) wrappers:
http://nl3.php.net/manual/en/ref.filesystem.php#ini.user-agent
--
Daniel Tryba
Michiel de Roo
13/09/04, 18:25
Daniel Tryba wrote:
> Michiel de Roo <yourlove@welovespam.nl> wrote:
>
>>>Een simpele RTFM dus :)
>>
>>Klopt...
>>
>>Maar het originele probleem had ik in een PHP script. Het zou me niet
>>verbazen als die ook dubbele headers zit te sturen. Ik had alleen met wget
>>zitten testen om te kijken wat het probleem nu eigenlijk was.
>
>
> Show us the source... het lynx voorbeeld doet geloven dat 'UA: none'
> geen probleem is.
De source is niet makkelijk te simplificeren, want dit is een combinatie
van eigen en externe classes (http class van GuinuX). Daarom was ik ook
maar met wget gaan stoeien.
Maar het probleem is inmiddels opgelost..
>
> BTW mochten je pogingen gebruik maken van de http(s) wrappers:
> http://nl3.php.net/manual/en/ref.filesystem.php#ini.user-agent
>
Nee, die gebruik ik niet.