Page 1 of 1

Trackback not found

Posted: Fri Apr 29, 2011 4:37 pm
by danst0
Hi,

I just published an article with several links, two of which were internal.
For one internal link s9y found a trackback for the other not?
This is the article:
http://scrmblog.com/archives/238-This-W ... -2011.html

For this link it found a trackback
http://scrmblog.com/archives/235-Agile- ... ainty.html

For this it did not:
http://scrmblog.com/archives/232-Impact ... mance.html

See also on the screen shot.
Daniel

Re: Trackback not found

Posted: Mon May 02, 2011 1:10 pm
by garvinhicking
Hi!

That's quite strange. In include/functions_trackbacks.inc.php the function serendipity_trackback_autodiscover() should take care of evaluating a requested response like the URL you mentioned.

The output "echo '<div>&#8226; ' . sprintf(TRACKBACK_FAILED, TRACKBACK_NOT_FOUND) . '</div>';" only can happen, when the "trackback:..." output is not found inside the requested URL. Clearly, in your URL this text *is* existing.

So I can only suppose due to some reason the HTTP request of that file failed. When you create a new article, does the same still occur?

The matching itself is performed through the same file, function serendipity_reference_autodiscover().


Maybe if you can edit line 286 from this:

Code: Select all

$trackback_result = serendipity_trackback_autodiscover($fContent, $parsed_loc, $url, $author, $title, $text, $loc);
to this:

Code: Select all

echo "The response contains " . $fContent . " bytes.<br />\n";
$trackback_result = serendipity_trackback_autodiscover($fContent, $parsed_loc, $url, $author, $title, $text, $loc);
echo nl2br(htmlspecialchars($fContent));
This will show you the URL that was fetched, and how many bytes it contained. With the given HTML, we should be able to see why the regular expression for matching "trackback:ping"... from the file could fail...

Thanks for reporting,
Garvin