Toon posts:

[AJAX] HTTP Status 406

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

Verwijderd

Topicstarter
Ik heb recentelijk een AJAX website in elkaar gezet en deze werkt onder Internet Explorer en Firefox goed, alleen onder Opera loop ik tegen problemen aan. Als ik de site op een interne linux test server open is er niks aan de hand, maar zodra ik de website open op de echte server in Opera krijg ipv een http status van 400, een foutmelding terug met de http status 406.

Hieronder een plaatje met de header informatie:
Afbeeldingslocatie: http://www.chillspel.nl/error.PNG

Over HTTP Status 406 kon ik alleen het volgende vinden: HTTP Error 406 - Not acceptable

Kan iemand mij vertellen wat het precies inhoudt en hoe ik het probleem oplos?

  • Blaise
  • Registratie: Juni 2001
  • Niet online
Dit heeft te maken met de mod_security instellingen van Apache. Waarschijnlijk verstuurt Opera andere headers bij een xmlhttprequest. Op http://www.urbangiraffe.com/2005/08/20/mysterious-406-error/ staat een oplossing.

[ Voor 3% gewijzigd door Blaise op 20-12-2006 01:11 ]


Verwijderd

Topicstarter
Bedankt voor de reactie :) Ik zal de genoemde oplossing vanavond nog proberen!

  • frickY
  • Registratie: Juli 2001
  • Laatst online: 13:38
Googlen op http status codes, eerste hit;
The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request.

Unless it was a HEAD request, the response SHOULD include an entity containing a list of available entity characteristics and location(s) from which the user or user agent can choose the one most appropriate. The entity format is specified by the media type given in the Content-Type header field. Depending upon the format and the capabilities of the user agent, selection of the most appropriate choice MAY be performed automatically. However, this specification does not define any standard for such automatic selection.

Note: HTTP/1.1 servers are allowed to return responses which are
not acceptable according to the accept headers sent in the
request. In some cases, this may even be preferable to sending a
406 response. User agents are encouraged to inspect the headers of
an incoming response to determine if it is acceptable.
If the response could be unacceptable, a user agent SHOULD temporarily stop receipt of more data and query the user for a decision on further actions.
Oftewel, kijk je "Accept" request header eens na. De meeste UA's stuen een "Accept: */*" mee, maar misschien dat Opera dat niet doet?

Verwijderd

Wat ik altijd zo jammer vind aan deze sites is dat ze alleen werken als je javascript aan hebt staan en dat google ze totaal niet indexeerd. Laat staan het bookmarken en direct linken naar een pagina. Maar dat is mijn mening. Overigens wel een leuke implementatie van Ajax

  • Blaise
  • Registratie: Juni 2001
  • Niet online
Dat is een ongenuanceerd beeld van 'ajax sites'. Er zijn ook sites die gebruik maken van ajax, met waar nodig een HTML fallback voor niet-javascript browsers en zoekmachines.

Verwijderd

Topicstarter
frickY schreef op donderdag 21 december 2006 @ 17:51:
Googlen op http status codes, eerste hit;

Oftewel, kijk je "Accept" request header eens na. De meeste UA's stuen een "Accept: */*" mee, maar misschien dat Opera dat niet doet?
Dit had ik gezien, maar ik werd er niet veel wijzer van. Maar als dit een Opera probleem is, zullen alle Opera clients dit standaard zo doen, waardoor ik toch een server-side oplossing moet hebben lijkt me?
Verwijderd schreef op donderdag 21 december 2006 @ 21:03:
Wat ik altijd zo jammer vind aan deze sites is dat ze alleen werken als je javascript aan hebt staan en dat google ze totaal niet indexeerd. Laat staan het bookmarken en direct linken naar een pagina. Maar dat is mijn mening. Overigens wel een leuke implementatie van Ajax
Dat is inderdaad het jammere van Ajax, het verlies van bookmark mogelijkheden en indexeren van zoekmachines. Overigens was ik bezig met een manier om toch te kunnen direct-linken binnen het Ajax programma'tje, alleen is de ontwikkeling daarvan een beetje tot stilstand gekomen dankzij mijn SE-Week. :(

Bedankt voor het compliment :) Ik vond Ajax hier toch een hele verbetering op de oude site (en ik moest toch oefenen met Ajax technieken) aangezien de host in Amerika zit en niet bijzonder snel is. Met Ajax zijn de laadtijden een stuk verminderd. Ook was de client/server scheiding erg practisch in verband met chaching (minder laadtijden) en ook kun je eenvoudig data van bijvoorbeeld de online shop clientside beheren en deze pas naar de server sturen als het nodig is.

Hmm dat editen van het .htaccess bestand bezorgt me alleen maar een 500 - Internal Server Error. :?

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
# -FrontPage-



ErrorDocument 404 /404.php
ErrorDocument 401 /401.php
IndexIgnore .htaccess */.??* *~ *# */HEADER* */README* */_vti*

<Limit GET POST>
order deny,allow
deny from all
allow from all
</Limit>
<Limit PUT DELETE>
order deny,allow
deny from all
</Limit>
AuthName www.corazong.com
AuthUserFile /home/corazong/public_html/_vti_pvt/service.pwd
AuthGroupFile /home/corazong/public_html/_vti_pvt/service.grp
AddType audio/x-ms-wax wax
AddType audio/x-ms-wma wma

<IfModule mod_security.c>
SecFilterEngine Off 
SecFilterScanPOST Off
</IfModule>


Zonder die laatste vier regels werkt het perfect, met krijg ik alleen maar een Internal Server Error.

[ Voor 39% gewijzigd door Verwijderd op 21-12-2006 23:13 ]


Verwijderd

Topicstarter
Kickje?

Verwijderd

Topicstarter
Nog n kickje?

  • JKVA
  • Registratie: Januari 2004
  • Niet online

JKVA

Design-by-buzzword fanatic

Als die 500 niet door jouw eigen code getriggerd wordt, zou ik eens in de logs gaan zoeken van je server. Een 500 kan vanalles zijn.

Fat Pizza's pizza, they are big and they are cheezy


  • NightBird
  • Registratie: Januari 2000
  • Laatst online: 01-12 20:47

NightBird

DPC-Crew Coding
Verwijderd schreef op donderdag 21 december 2006 @ 21:03:
Wat ik altijd zo jammer vind aan deze sites is dat ze alleen werken als je javascript aan hebt staan en dat google ze totaal niet indexeerd. Laat staan het bookmarken en direct linken naar een pagina. Maar dat is mijn mening. Overigens wel een leuke implementatie van Ajax
Kijk eens op (bijv.) www.backbase.com .. die hebben een ajax-framework die SEO-vriendelijk is, waar je direct kan linken en waar bookmarks mogelijk zijn.

WatHoorJeWaar · Asobakken
Eerdere projecten: Leading Courses · Brandstof-zoeker.nl · Voertuig-zoeker.nl


Verwijderd

NightBird schreef op zondag 31 december 2006 @ 11:24:
Kijk eens op (bijv.) www.backbase.com .. die hebben een ajax-framework die SEO-vriendelijk is, waar je direct kan linken en waar bookmarks mogelijk zijn.
Even een kleine correctie. Backbase is in principe niet SEO-vriendelijker dan andere Ajax-oplossingen (het blijft gewoon JavaScript natuurlijk). :) De reden dat dit voor backbase.com wel goed werkt is dat de content server-side zo is opgezet dat het eenvoudig is om een noscript versie te publiceren naast de normale site. Deze noscript versie wordt natuurlijk wel prima geindexeerd. Bookmarks en direct-linking zitten inderdaad wel in het framework verwerkt en zo is het dus ook relatief eenvoudig om vanuit de noscript versie te redirecten naar de Ajax versie als de browser ondersteund wordt. Surf maar eens naar http://www.backbase.com/home/products/download.html.

Verwijderd

Topicstarter
JKVA schreef op zondag 31 december 2006 @ 10:53:
Als die 500 niet door jouw eigen code getriggerd wordt, zou ik eens in de logs gaan zoeken van je server. Een 500 kan vanalles zijn.
De 500 wordt getriggerd omdat er iets mis is met de .htaccess bestand. Dat komt doordat ik de genomde regel toevoeg.
Pagina: 1