Toon posts:

[Opera] HTTP 406 Error

Pagina: 1
Acties:
  • 112 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Mijn AJAX site controleert bij de data dat het ontvangt op een juiste HTTP status (200). Dit werkt in alle browsers goed, alleen Opera blijft een HTTP status van 406 terug geven.

Nu zegt opera het volgende over de HTTP status 406:

code:
1
2
3
4
5
6
7
; Used in a popup error message when the user tries to fetch a document by
; clicking a link, and the server cannot send the requested document in a
; format that matches the content of the HTTP accept headers sent in the
; request (HTTP error code 406), if the user has set the Network/Server
; errors/Always show dialog box preference. However, Opera accepts all
; document formats and sends *.* in its accept header, so this is unlikely
; to happen.


De response komt als XML terug van de server vanuit een PHP script:

PHP:
1
2
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Content-type: text/xml; charset=utf-8");


Hierna wordt een xml document gebouwd en teruggegeven.

Het rare is dat de site op m'n lokale testserver wel werkt, maar zodra het op de production server staat niet meer?

Weet iemand een oplossing voor dit probleem?

  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

Check eens op je production server welke header je terugkrijgt.

Het kan zijn dat daar een andere header wordt meegestuurd.

Going for adventure, lots of sun and a convertible! | GMT-8


  • CrashOne
  • Registratie: Juli 2000
  • Niet online

CrashOne

oOoOoOoOoOoOoOoOoOo

Kijk eens naar wat voor headers je productie server terug stuurt, ik denk dat deze iets anders terug stuurt (voor dat jij je headers stuurt).

niet te snel he Snake :P

[ Voor 13% gewijzigd door CrashOne op 04-06-2007 21:02 ]

Huur mij in als freelance SEO consultant!


Verwijderd

Topicstarter
Snake schreef op maandag 04 juni 2007 @ 21:00:
Check eens op je production server welke header je terugkrijgt.

Het kan zijn dat daar een andere header wordt meegestuurd.
Euh, hoe doe ik dat? :/
De index pagina zelf krijgt html/text meegestuurd, de xml response weet ik niet hoe ik dat zie.

[ Voor 48% gewijzigd door Verwijderd op 04-06-2007 21:33 ]


  • Fuzzillogic
  • Registratie: November 2001
  • Laatst online: 01-07 22:34
Fiddler.

  • Onbekend
  • Registratie: Juni 2005
  • Laatst online: 23:22

Onbekend

...

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
Informational 1xx 
100 Continue
101 Switching Protocols


Successful 2xx 
200 OK
201 Created
202 Accepted
203 Non-Authoritative Information
204 No Content
205 Reset Content
206 Partial Content


Redirection 3xx 
300 Multiple Choices
301 Moved Permanently
302 Moved Temporarily
303 See Other
304 Not Modified
305 Use Proxy

 
Client Error 4xx 
400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
407 Proxy Authentication Required
408 Request Timeout
409 Conflict
410 Gone
411 Length Required
412 Precondition Failed
413 Request Entity Too Large
414 Request-URI Too Long
415 Unsupported Media Type


Server Error 5xx 
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported


De error ligt dus aan Opera (client error) en Opera accepteert het dus niet....

Speel ook Balls Connect en Repeat


Verwijderd

Topicstarter
Afbeeldingslocatie: http://www.corazong.com/Capture.JPG

Het lijkt er dus op dat hij toch "text/html" meegestuurd krijgt. Hoe voorkom ik dat?

@Ook_bekend: Het moet toch een server error zijn denk ik, anders had het op de test server ook niet gewerkt.

[ Voor 29% gewijzigd door Verwijderd op 04-06-2007 21:34 ]


  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

Just to make sure...

Die php headers, staan die ook in het document wat de xml opbouwt, en terugstuurt?

Going for adventure, lots of sun and a convertible! | GMT-8


  • Onbekend
  • Registratie: Juni 2005
  • Laatst online: 23:22

Onbekend

...

Verwijderd schreef op maandag 04 juni 2007 @ 21:33:
@Ook_bekend: Het moet toch een server error zijn denk ik, anders had het op de test server ook niet gewerkt.
Begrijp me niet verkeerd. Ik bedoel dat er een combinatie van headers wordt verstuurd waar Opera geen raad mee weet. Gezien je in je startpost aangeeft dat Opera als enigste een probleem heeft en de rest niet zou ik zeggen dat het een client error is.

Speel ook Balls Connect en Repeat


Verwijderd

Topicstarter
Ook onbekend schreef op maandag 04 juni 2007 @ 21:47:
[...]

Begrijp me niet verkeerd. Ik bedoel dat er een combinatie van headers wordt verstuurd waar Opera geen raad mee weet. Gezien je in je startpost aangeeft dat Opera als enigste een probleem heeft en de rest niet zou ik zeggen dat het een client error is.
Mja, het is een standaard opera install. Misschien dat opera gewoon stricter is dan andere browsers? Anders zou ik graag een workaround horen..
Snake schreef op maandag 04 juni 2007 @ 21:40:
Just to make sure...

Die php headers, staan die ook in het document wat de xml opbouwt, en terugstuurt?
Jup. Om precies te zijn include dit document een andere php bestand die een array genereert. Deze wordt dmv een functie in een andere php bestand (die ook geinclude wordt) omgezet in xml. (De functie geeft de string terug van $DOMDocument->saveXML();). Die xml string wordt via een print_r dan teruggegeven aan de client.

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op maandag 04 juni 2007 @ 22:15:
Jup. Om precies te zijn include dit document een andere php bestand die een array genereert. Deze wordt dmv een functie in een andere php bestand (die ook geinclude wordt) omgezet in xml. (De functie geeft de string terug van $DOMDocument->saveXML();). Die xml string wordt via een print_r dan teruggegeven aan de client.
Wat snake bedoelt is of je expliciet het content type ook set ;) Dus iets van:
PHP:
1
header("Content-type: application/xml")
ofzo. Ben niet zo'n PHP guru :P

[ Voor 9% gewijzigd door RobIII op 05-06-2007 03:08 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Ploink
  • Registratie: April 2002
  • Laatst online: 19:58
Verwijderd schreef op maandag 04 juni 2007 @ 20:58:
...
PHP:
1
2
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Content-type: text/xml; charset=utf-8");

...
'Content-Type' is case sensitive. Misschien doet de server hier moeilijk over.

Verwijderd

Topicstarter
RobIII schreef op dinsdag 05 juni 2007 @ 03:07:
[...]

Wat snake bedoelt is of je expliciet het content type ook set ;) Ben niet zo'n PHP guru :P
Haha, dat doe ik in mijn script wel degelijk, zoals in de startpost staat :)
Ploink schreef op dinsdag 05 juni 2007 @ 05:13:
[...]

'Content-Type' is case sensitive. Misschien doet de server hier moeilijk over.
Net geprobeerd. Helaas nog steeds dezelfde error. :/

[ Voor 36% gewijzigd door Verwijderd op 05-06-2007 09:15 . Reden: typo ]


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op dinsdag 05 juni 2007 @ 09:09:
Haha, dat doe ik in mijn script wel degelijk, zoals in de startpost staat :)
Dan moet je toch eens debuggen, want op de een of andere manier doet 'ie dat niet he? ;)
Ploink schreef op dinsdag 05 juni 2007 @ 05:13:
[...]

'Content-Type' is case sensitive. Misschien doet de server hier moeilijk over.
Bij mijn weten niet hoor?

[ Voor 24% gewijzigd door RobIII op 05-06-2007 10:31 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Topicstarter
RobIII schreef op dinsdag 05 juni 2007 @ 10:27:
[...]

Dan moet je toch eens debuggen, want op de een of andere manier doet 'ie dat niet he? ;)
Nee :( Mja, hoe zou ik de headers anders mee moeten geven in php?

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op dinsdag 05 juni 2007 @ 10:47:
[...]


Nee :( Mja, hoe zou ik de headers anders mee moeten geven in php?
Je moet kijken waarom ze niet verstuurd worden, niet hoe je de headers anders mee geeft ;)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Snake
  • Registratie: Juli 2005
  • Laatst online: 07-03-2024

Snake

Los Angeles, CA, USA

Verwijderd schreef op dinsdag 05 juni 2007 @ 10:47:
[...]


Nee :( Mja, hoe zou ik de headers anders mee moeten geven in php?
Je file, is die .php of .xml?

Maak er eens een .xml van, en via een .htaccess parse je die met php.

Going for adventure, lots of sun and a convertible! | GMT-8


Verwijderd

Topicstarter
RobIII schreef op dinsdag 05 juni 2007 @ 10:51:
[...]

Je moet kijken waarom ze niet verstuurd worden, niet hoe je de headers anders mee geeft ;)
Snap ik :) Ik heb alleen werkelijk geen idee waarom.
Snake schreef op dinsdag 05 juni 2007 @ 10:51:
[...]

Je file, is die .php of .xml?

Maak er eens een .xml van, en via een .htaccess parse je die met php.
Dat geeft me een HTTP status van 405 (method not allowed).

Verwijderd

Topicstarter
*subtiel kickje*

Ben er helaas nog niet uit :(

  • CH4OS
  • Registratie: April 2002
  • Niet online

CH4OS

It's a kind of magic

Verwijderd schreef op dinsdag 05 juni 2007 @ 12:10:
Dat geeft me een HTTP status van 405 (method not allowed).
Als je in je .xml file als eerste regel die je door PHP laat parsen het volgende zet
PHP:
1
header('Content-Type: application/xml');
wat krijg je dan terug?

Verwijderd

Topicstarter
GJ-tje schreef op woensdag 06 juni 2007 @ 18:31:
[...]
Als je in je .xml file als eerste regel die je door PHP laat parsen het volgende zet
PHP:
1
header('Content-Type: application/xml');
wat krijg je dan terug?
Ik heb even de mogelijkheid niet om dat te testen. Zal het morgen even proberen en dan laat ik weten hoe het gaat. Bedankt voor je hulp alvast!
Pagina: 1