Martin Bekkelund

En blogg om IT

WordPress, tilbaketråkk og 406

torsdag 2. november 2006 • 14 kommentarer

I en periode har jeg hatt problemer med tilbaketråkk-funksjonen i WordPress. Å sende tilbaketråkk går greit, men å motta de er ikke fullt så enkelt. Det ser ut som om tilbaketråkk er akillessenen til WordPress, uten at jeg skal selge noe skinn før feilen er skutt.

En dag i forrige uke dumpet det inn en e-post fra Kyrre om at WordPress-installasjonen min returnerte en 406 når han sendte tilbaketråkk. Loggen fra Kyrres Movable Type-installasjon fortalte følgende:

Ping ‘http://www.bekkelund.net/blogg/2006/10/24/firefox-versjon-2/trackback/’ failed: HTTP error: 406 Not Acceptable

Leser man HTTP/1.1-spesifikasjonen, står følgende å lese under 406:

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.

Akkurat. Like lettlest som en murstein. Jeg tolker det uansett dithen at ressursen som forespørres kun er i stand til å håndtere forespørsler i henhold til en spesifisert karakteristikk. Noe vagt, men det har i hvert fall fått meg til å teste ut tilbaketråkk fra flere forskjellige CMS, for å se om det kun var Movable Type eller flere som ikke kan sende tilbaketråkk. Resultatet viser at av fem testede CMS kan kun to sende tilbaketråkk. WordPress og Movable Type er ikke blant disse.

Jeg har trålet WordPress’ support-nettsted, uten å finne et tilfredsstillende resultat, og jeg har oppgradert WordPress. All funksjonalitet i WordPress er urørt, med unntak av temaet og et par filer jeg har oversatt til norsk. Dersom videre feilsøking ikke fører frem, ruller jeg tilbake all kode til en original WordPress-installasjon, kjører standardtemaet, fjerner .htaccess, deaktiverer “mod_security” og prøver på nytt. Dersom tilbaketråkk fortsatt feiler er rådyra gode.

Det sier seg selv at feilsøking av tilbaketråkk er en sær greie. Hva feiler, hvor og hvorfor? Er det noe i koden til WordPress, er det noe Apache, eksempelvis i .htaccess eller en installert modul eller er det andre forhold som gjør at WordPress returnerer 406?

Absolutt alle tips om feilsøking mottas med stor takk! Hvordan og hvor bør jeg lete? Jeg ønsker gjerne at du som leser dette, og som har din egen weblogg, sender tilbaketråkk fra en eller flere (vilkårlige) poster i din egen weblogg til denne posten. Etter tilbaketråkket legger du igjen en kommentar og forteller om resultatet. :-)

Som takk for hjelpen deler jeg ut virtuelle klemmer akkurat her -> ;-)

Følg @MartinBekkelund på Twitter!

14 kommentarer

  1. Et ping fra http://kyrres.net/arkiv/2006/10/25/ping_406_not_acceptable/ returnerte nå …

    Ping ‘http://www.bekkelun_bekkelu….406/‘ failed:HTTP error: 406 Not Acceptable

    Så det hjalp ikke så mye. I alle fall ikke for de av oss som bruker MT

  2. Fungerer ikke fra WordPress heller. Tips til hvor jeg bør starte feilsøking? Akkurat nå tenker jeg på å arbeide ut i fra eliminasjonsmetoden, dog ikke med alt for store forhåpninger.

  3. Hva sier Apache sine loggfiler da? Sier de ingen ting om feilen så er det garantert WP som bøller, og sier de noe så bør det jo være en triviell sak, ut fra loggene, å fjerne feilen. Sånn til å begynne med ville jeg altså sett hva webserveren sier om saken. Du må jo starte letingen en plass og da er det vel naturlig å “gå til kilden”.

  4. Jeg tror ikke det er WP koden, for slikt sett skulle ikke jeg ha fått tilbaketråkk på noen av mine blogger, hvilket jeg gjør.

    Dessuten skulle du vel ha funnet noen med samme problem hvis det hadde vært WordPress.

  5. For å oversette 406 til klartekst: Klienten har typisk ved forespørsel sendt en Accept-header som ikke lister den Content-Typen det forespurte dokumentet returnerer.

    Feilen ligger nokså garantert på Kyrres side, og løsningen er å inkludere */*;q=0.1 i Accept-Headeren som tilbaketråkkscriptet sender ut.

    Den mer permanente løsningen på dette problemet er dog i lengden å skru av trackback, siden det stort sett allikevel bare brukes av spammere.

  6. Arve Bersvendsen: Feilen ligger nokså garantert på Kyrres side, og løsningen er å inkludere */*;q=0.1 i Accept-Headeren som tilbaketråkkscriptet sender ut.

    Vel, jeg er heller ikke i stand til å sende tilbaketråkk, verken fra Webaksess (Movable Type 3.31) eller IT-nytt (Movable Type 3.32). Feilmeldingen er den samme som den Kyrre får, og ser slik ut:

    (Min IP-adresse: 84.48.232.79) Ping ‘http://www.bekkelund.net/blogg/2006/11/02/wordpress-tilbaketrakk-og-406/trackback/‘ failed: HTTP error: 406 Not Acceptable

    Jeg har ikke problemer med å sende tilbaketråkk til andre WordPress-blogger, ikke sist jeg prøvde i hvert fall (noen måneder siden) …

    (Noe helt annet: Flott at du har implementert forhåndsvisning av kommentarene nå, Martin!)

  7. Jeg kan ikke se at feilen ligger på min side (akkurat på dette punktet). Det er kun bekkelund.net jeg ikke får sendt trackback til. Martin skriver jo også selv at han ikke får sendt trackback “fra WordPress heller” [1] og det er flere, med forskjellige implementasjoner som heller ikke får sendt trackback til bekkelund.net, men som, etter hva de sier, ikke har problemer med å gjøre det til andre plasser.

    [1] http://www.bekkelund.net/blogg/2006/11/02/wordpress-tilbaketrakk-og-406/#comment-5955

  8. Bare for å presisere: Jeg får sendt tilbaketråkk fra WordPress-installasjonen på bekkelund.net til alle andre CMS, men jeg får ikke sendt tilbaketråkk fra en annen WordPress-installasjon på et annet domene, til bekkelund.net.

    Jeg skal ved første anledning hente ut informasjon av Apache-loggene for å se hva jeg finner der. Takk for at du la igjen IP-adressen din, Asle, så kan jeg se spesifikt hva som har skjedd med din forespørsel.

  9. Martin: Takk for at du la igjen IP-adressen din, Asle, så kan jeg se spesifikt hva som har skjedd med din forespørsel.

    Bare hyggelig, men jeg ser nå at jeg glemte å legge med dato og klokkeslett for tilbaketråkket, så her er det også: «2006.11.03 11:14:56» :)

  10. Noe jeg reagerte på er at selve trackbackscriptet, altså http://www.bekkelund.net/blogg/2006/11/02/wordpress-tilbaketrakk-og-406/trackback/ for denne siden, sender en temporary redirect til selve http-dokumentet, som serveres som text/html.

    Det vil si at trackback-implementasjoner ikke vil få korrekt respons på trackbacken, som er en liten xml-pakke, se http://www.sixapart.com/pronet/docs/trackback_spec – typisk servert med text/xml.

    Nå vet jeg ikke om det er dette som er den faktiske feilen, men det var det en runde med ‘lynx -head -dump’ avslørte.

  11. Du er inne på noe vesentlig, Arve. Jeg skal sjekke ut en teori, straks jeg får litt tid og riktig verktøy tilgjengelig. Takk for god hjelp så langt! :-)

  12. Dette blir bare merkeligere og merkeligere. Jeg får fortsatt ikke sendt trackback til meg selv, og det er ikke veldig mange andre som gjør det heller. Imidlertid mottar jeg bøtter av trackback-spam (som heldigvis filtreres vekk).

    Jeg har prøvd ut samtlige teorier uten hell. Nå er rådyra gode.

Har du synspunkter? Legg igjen en kommentar!

Ingen anonyme kommentarer! Ved å trykke Send kommentar samtykker du i at du er kjent med personvernpolitikken og vil overholde retningslinjene for bekkelund.net.

Abonner uten å kommentere

RSS og trackback

Med RSS kan du abonnere på nye kommentarer som postes til denne artikkelen.

Du kan legge igjen et trackback fra ditt eget nettsted ved å benytte trackback-adressen til denne artikkelen. Eventuelle tracback ser du under.

Flere artikler

Enda flere artikler? Besøk arkivet.

Bekkelund.net er en blogg av Martin Bekkelund, hvor han lufter sine tanker om IT og IT-politikk. Martin arbeider til daglig som seniorrådgiver, foredragsholder og skribent i IT-bransjen, hvor han veileder bedrifter og organisasjoner i strategisk bruk av IT. Les mer...

Facebook Twitter LinkedIn Flickr Vimeo Google Reader Martin Bekkelunds blogg Martin Bekkelunds RSS-kanal

© 1995-2012 Martin Bekkelund
OpphavsrettRSSKontakt