PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : was genau verstehe ich nicht mit den trackbacks?



AA_
09.02.2009, 00:30
was ich gemacht habe:

ich habe in meinem forum einen blogbeitrag erstellt und dort angegeben, "trackbacks und pingbacks erlauben".

dann habe ich hier in diesem forum in meinem blog einen link gesetzt auf den anderen blogeintrag und die option gewählt, dass die verlinkten blogs benachrichtigt werden sollen. nach dem speichern kam dann auch eine abfrage mit auswahl meines blogs auf meinem forum. dieses habe ich aktiviert und das formular abgesendet.

es passierte nichts.

ich habe dann in der tabelle 'blog_trackbacklog' nachgesehen und einen eintrag gefunden:


a:2:{s:7:"GLOBALS";s:375:"<?xml version="1.0" encoding="windows-1252"?>
<methodCall>
<methodName>pingback.ping</methodName>
<params>
<param>
<value>
<string>http://www.vbulletin-germany.com/forum/blog.php?blogid=157</string>
</value>
</param>
<param>
<value>
<string>http://geb.german-elite.net/blog_callback.php?b=107</string>
</value>
</param>
</params>
</methodCall>
";s:6:"errors";a:1:{i:0;s:107:"Could not find phrase 'failed_to_retrieve_body_http://www.vbulletin-germany.com/forum/blog.php?blogid=157'.";}}dann habe ich mir die datei 'blog_callback.php' angesehen und mit erstaunen festgestellt, dass dort auf eine variable $GLOBALS['HTTP_RAW_POST_DATA'] getestet wird. *hüstel*

und - funktioniert sowas überhaupt noch mit einer standard-php-einrichtung? unter debian beispielsweise ist diese direktive per default deaktiviert.


; Always populate the $HTTP_RAW_POST_DATA variable.
always_populate_raw_post_data = Offsoweit, so gut. ich habe diese einstellung auf On gesetzt. schon seit geraumer zeit, einfach um diesen kram mal zum laufen zu bekommen. fehlanzeige.

das geheimnis ist schnell gelüftet: dies ist ein bug. die in vbulletin benutzte variable $GLOBALS['HTTP_RAW_POST_DATA'] gibt es überhaupt nicht!

stattdessen muss $HTTP_RAW_POST_DATA benutzt werden.

das hat mich natürlich verwirrt und so habe ich nach allen vorkommen von 'HTTP_RAW_POST_DATA' in den files etc gesucht. fehlanzeige.

um sicher zu gehen, habe ich mich in einem hook eingeklinkt mit diesem code (direkt vor der oben genannten abfrage der phantasie-variable):


if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
if (!isset($GLOBALS['HTTP_RAW_POST_DATA']))
{
$GLOBALS['HTTP_RAW_POST_DATA'] = file_get_contents('php://input');
}
}dieses plugin hat gleich 2 vorteile:

1. stellt es die merkwürdige variable zur verfügung und
2. ist mit diesem code keine änderung in der php.ini mehr erforderlich, da hier direkt auf php://input zugegriffen wird.

nachdem ich das übernommen habe, habe ich hier im blog nochmal meinen eintrag bearbeitet und das andere blog benachrichtigen lassen. im log war dann auch folgerichtig die oben gepostete fehlermeldung verschwunden und scheinbar alles in ordnung.

also vorausgesetzt, man fixt das mit der variable - was genau muss noch unternommen werden, damit das mit den trackbacks und pingbacks funktioniert?

Hatsu
09.02.2009, 09:34
Könntest du die Information drüben auf vB.com auch Freddie zu Gute kommen lassen? Normalerweise reagiert er recht schnell auf Fehlermeldungen.

AA_
09.02.2009, 09:56
das problem ist, dass im bugtracker und an anderen stellen sehr viel über dieses feature gesprochen wurde und das ganze ja angeblich funktionieren soll. möglicherweise habe ich nur die entsprechenden hinweise zur speziellen serverkonfiguration überlesen.

ich muss mir das ganze nochmal genauer ansehen. möglicherweise spielen auch noch weitere komponenten mit, zb:


; Whether or not to register the old-style input arrays, HTTP_GET_VARS
; and friends. If you're not using them, it's recommended to turn them off,
; for performance reasons.
register_long_arrays = On

ich habe es noch nicht getestet, ob bei dieser einstellung $HTTP_RAW_POST_DATA nicht in $GLOBALS['HTTP_RAW_POST_DATA'] verfügbar ist.

eine weitere möglichkeit ist, dass vbulletin nicht mit komprimierten responses klarkommt. leider kann ich hier nicht in die datenbank schauen *g*

ich muss mir wohl oder übel mit einer testumgebung das ganze mal genauer unter die lupe nehmen, bevor ich die entwickler mit mutmaßungen behellige.

fragen wir doch mal anders: funktioniert es denn bei jemand anderem, speziell mit einem blog hier in diesem forum? es kann ja durchaus auch sein, dass hier irgendwas per konfiguration deaktiviert ist.

Hatsu
09.02.2009, 10:38
Nunja, du könntest auch einfach jemanden Fragen, der es programmiert und was er sich dabei gedacht hat? Freddie ist eigentlich sehr umgänglich was das betrifft und sagt auch, wenn es ein Fehler ist. :)

AA_
09.02.2009, 22:12
gut, also nochmal in einfach: bei wem funktionieren trackbacks und pinkbacks im blog?

ich bekomme es nicht hin.

wenn ich es innerhalb meines eigenen blogs zwischen verschiedenen einträgen mache, steht im log nur ein "application error" mit code -32500.

wäre schön wenn sich jemand findet mit einem funktionierenden blog.

AA_
09.02.2009, 22:58
habe es nun mit wordpress getestet und da klappt es. muss wohl dann an vbulletin liegen - vielleicht können die nicht untereinander?

Da Dirnbocher
15.02.2009, 13:21
gut, also nochmal in einfach: bei wem funktionieren trackbacks und pinkbacks im blog?

Bei uns dürfte es auch nicht funktionieren. So ist zb in meinem Blog (http://www.weinviertel.net/blog.php?b=68) auf Helmuts Blog (http://www.weinviertel.net/blog.php?b=45) verlinkt, Benachrichtigung wurde eingeschaltet und von mir auch beim Veröffentlichen bestätigt.

Auch Trackback in andere (zB Wordpress)-Blogs kommen nicht an (Beispiel (http://www.weinviertel.net/blog.php?b=41)).

Da Dirnbocher
21.02.2009, 20:04
Bei uns dürfte es auch nicht funktionieren.

Gibts was dazu was neues?

AA_
21.02.2009, 22:04
trackbacks innerhalb eines forums scheinen nicht zu gehen. ich kann das auch nicht debuggen. im log steht lediglich ein vielsagendes "application error", welches vom xml-parser stammt. trackbacks von und zu wordpress klappen aber, sofern die rechte entsprechend gesetzt worden sind.

Merrit
22.02.2009, 16:08
Ah hier steht die Info, die ich suche... Trackbacks gehen also nicht innerhalb eines Forums. Sehr schade sowas!

Was mich nun nur irritiert ist, Wie setze ich denn ein Trackback zu einer externen Quelle? Im Editor des Blogs gibt es dazu keine Option. Oder reicht es einfach im Text einen Link zu dem anderen Blog zu setzen? :confused:

Viele Grüße
Merrit

Da Dirnbocher
24.02.2009, 21:57
Ah hier steht die Info, die ich suche... Trackbacks gehen also nicht innerhalb eines Forums. Sehr schade sowas!

Was mich nun nur irritiert ist, Wie setze ich denn ein Trackback zu einer externen Quelle? Im Editor des Blogs gibt es dazu keine Option. Oder reicht es einfach im Text einen Link zu dem anderen Blog zu setzen? :confused:

Viele Grüße
Merrit

Im Text einen Link setzen und bei den Optionen "Verlinkte Blogs in diesem Blog-Eintrag benachrichtigen" anwählen, wenn Du dann speichern wählst, kommt eine Auswahl der Links aus dem Text.

Da Dirnbocher
24.02.2009, 22:01
trackbacks von und zu wordpress klappen aber, sofern die rechte entsprechend gesetzt worden sind.


Im Blgkontrollzentrum steht in den Erläuterungen zu "Gäste dürfen":


Wenn du hier Mein Blog ansehen nicht aktivierst, kannst du keine Trackback- und Pingback-Benachrichtigungen an andere Blogs schicken.

Heisst das wirklich "schicken" und nicht "empfangen"? Was verstehe ich da (schon wieder) nicht?

pogo
25.02.2009, 10:51
Ja, das heißt schicken. Was bringt es eine Benachrichtigung an ein anderes Blog zu schicken und dort dann einen Link zu deinem Blog zu haben, wenn interessierte Gäste dein Blog dann nicht lesen dürfen?

Nach dem Motto "Ich schreibe über dich, aber was ich schreibe, bleibt mein Geheimnis".

Da Dirnbocher
25.02.2009, 23:18
Ja, das heißt schicken. Was bringt es eine Benachrichtigung an ein anderes Blog zu schicken und dort dann einen Link zu deinem Blog zu haben, wenn interessierte Gäste dein Blog dann nicht lesen dürfen?


Danke fürs Augen öffnen.

Wie schauts dann umgekehrt aus? Was kann es für eine Ursache geben, dass ein Link aus einem Wordpress-Blog nicht als Trackback in einem vBlog-Blog dargestellt wird?

Stoebi
13.03.2009, 07:19
Guten Morgen

@AA_

Ich habs gestern rauf- und runtergetestet. Mit meinem Server, mit vbpoint.org, mit weinviertel.net, mit vbulletin.com und vbulletin-germany.com. Ohne Erfolg. :(

Entweder liegts wirklich an vBulletin, oder an irgendwelchen Servereinstellungen. Interessant ist ja, das es bei einigen funktioniert.

AA_
13.03.2009, 09:01
Guten Morgen

@AA_

Ich habs gestern rauf- und runtergetestet. Mit meinem Server, mit vbpoint.org, mit weinviertel.net, mit vbulletin.com und vbulletin-germany.com. Ohne Erfolg. :(

Entweder liegts wirklich an vBulletin, oder an irgendwelchen Servereinstellungen. Interessant ist ja, das es bei einigen funktioniert.

ist dies in der php.ini so eingestellt?

; Always populate the $HTTP_RAW_POST_DATA variable.
always_populate_raw_post_data = On

AA_
13.03.2009, 09:04
wer ein vbulletin-blog zum testen benötigt, bei mir funktioniert es. hier mit diesem eintrag können trackbacks gern getestet werden: http://geb.german-elite.net/blog.php?b=124


// nachtrag: hier auf vbulletin-germany.com kommen trackbacks zb aus einem wordpress-blog an. allerdings sind die einstellungen hier so gesetzt, dass der blogbesitzer die trackbacks nicht freischalten darf. umgekehrt kann man aber trackbacks zu einem wordpress-blog setzen. soll heissen, vbulletin < -- > wordpress funktioniert, wenn das vbulletin entsprechend konfiguriert ist.

hier noch zum testen von trackbacks mit wordpress ein eintrag: http://gebteam.wordpress.com/2009/02/09/trackbacktests/

Stoebi
13.03.2009, 10:21
Dank dir für deine Antwort erst einmal :)

Bei einigen Providern muss ich leider direkt den Support kontaktieren (das nervt sowas von ungemein), da sich der Wert nicht via .htaccess/php.ini ändern lässt (Server Fehler 500).

Bei meinen Servern klappt das dagegen einwandfrei. Verstehen tue ich nicht, warum das nicht innerhalb eines Forum klappt, hast du da schon in dieser Sache Ursachenforschung betrieben? Ist das so gewollt, oder ein Fehler?


Gruß Stöbi

AA_
13.03.2009, 11:42
klar hab ich mir das angesehen. man findet auch wichtige hinweise in der tabelle blog_trackbacklog.

zum beispiel:


<strong>Fatal error:</strong> is_member_of_blog(): $userinfo['permissions'] not defined. in <strong>[path]/includes/blog_functions_shared.php</strong> on line <strong>277</strong><br />

oder


<name>faultCode</name>
<value>
<int>-32500</int>
</value>
</member>
<member>
<name>faultString</name>
<value>
<string>application error</string>
</value>
</member>

der xml-fehler ist nicht in vbulletin definiert, sondern kommt direkt aus den xml-funktionen aus dem letzten jahrtausend.

diese ganzen trackback- und pingbackfunktionen sind ausgesprochen unprofessionell und lieblos umgesetzt. die fehlermeldungen verschwinden in irgendwelchen mysql-tabellen und der administrator bekommt graue haare, weil nirgends hinweise auf fehlfunktionen zu finden sind. stattdessen sucht man sich in supportforen halb dumm, um hinweise zu erhalten, wie man es denn nun richtig macht. und ausser den standard-anleitungen und den zahlreichen rückmeldungen, dass es nicht funktioniert, findet man keine lösungen.

ich habe auch den verdacht, dass sich gerade deshalb so wenig administratoren melden. wer will schon als depp hingestellt werden, der nicht lesen kann?

fakt ist aber, dass wordpress mit vbulletin in beide richtungen klarkommt. warum das vbulletin mit sich selbst auf kriegsfuss steht und nichtssagende xml-fehlermeldungen produziert - keine ahnung. und ehrlich gesagt, hab ich auch wenig lust, mich durch dieses wirrwarr von altertümlichen xml-funktionen zu wühlen.

Stoebi
13.03.2009, 12:02
Wirklich sehr seltsam. Ich habe gerade bei mir einmal nachgeschaut. Es wurden 3 Links versendet.

status: 0
message:

a:3:{s:7:"headers";s:212:"HTTP/1.1 200 OK
Date: Fri, 13 Mar 2009 10:25:56 GMT
Server: Apache/2.2.3 (Red Hat)
X-boxen: web2
X-Powered-By: PHP/5.2.6
Content-Length: 176
Content-Type: text/xml; charset=windows-1252
Connection: close
";s:4:"body";s:176:"<?xml version="1.0" encoding="windows-1252"?>
<methodResponse>
<params>
<param>
<value>
<string>accepted</string>
</value>
</param>
</params>
</methodResponse>
";s:9:"body_file";s:19:"/tmp/vbuploadWilf5A";}

Hm....

Nachtrag:
Irritiert bin ich, im Feld system der Tabelle blog_trackbacklog steht jeweils pingback. Müsste es nicht trackback lauten?

s.molinari
20.03.2009, 06:54
Pingback ist der neue Begriff für Trackback. Sie sind gleich zu sehen.:)

Für alle, die das Trackback/ Pingback Problem zwischen zwei vBs haben, bitte folgende Änderung ausprobieren.

In der Datei class_dm_blog_trackback.php ca. Zeile 168 ist diese Zeile Code.


if ($bodyresult = fetch_body_request($url, 20000)) // 20000 is arbitrary and may need more consideration

Erhöhe bitte die Zahl 20000 auf 100000. Diese Änderung hilft das Forum, das das Trackback empfängt. (Natürlich sollte aber beide Foren geändert werden.)

Bitte auch folgende Punkte beachten:

1. Dass der verlinkte Blogeintrag öffentlich ist. (kann wirklich von Gäste gelesen werden)
2. Dass du einen neuen Blogeintrag schreibst und die Verlinkung (Trackback/ Pingback) versendest, um zu testen. (Helmut, das habe ich in deinem Ticket vergessen zu erwähnen) Beim Testen diese Einstellung beim Absenden anklicken:

Verlinkte Blogs in diesem Blog-Eintrag benachrichtigen
3. Dass der Blogger der den Trackback empfängt weisst, ob seine Trackbacks moderiert oder nicht moderiert sind und falls sie moderiert sind, die Trackbackmoderation prüfen, ob das Trackback freigeschaltet werden muss und wenn ja, freischalten.:)
4. Du hast vB-Blog 2.0.1 oder höher. (Das System hatte vorher einen anderen Bug:o)

Erst dann sieht man das Trackback.

Ah, und der Trackback-Link ist der Link zum anderen Blog. Nicht "blog_callback.php?b=XXX"

Scott

AA_
20.03.2009, 09:00
klappt jetzt. vielen dank für deine / eure bemühungen.

AA_
20.03.2009, 09:24
noch 2 anmerkungen: hier im forum haben normale user keine berechtigungen, empfangene trackbacks freizuschalten. ist das so gewollt?

was sehr schade ist, dass es keine emailbenachrichtigungen gibt, wenn ein trackback eingegangen ist und diese automatisch moderiert wurden. man bekommt es - wenn überhaupt - nur zufällig mit.

pogo
20.03.2009, 15:21
noch 2 anmerkungen: hier im forum haben normale user keine berechtigungen, empfangene trackbacks freizuschalten. ist das so gewollt?
Ich denke eher ein Bug (http://www.vbulletin.com/forum/project.php?issueid=27484).

Das dürfte nirgends für normale Benutzer funktionieren.

s.molinari
20.03.2009, 20:05
Pingback ist der neue Begriff für Trackback. Sie sind gleich zu sehen.

Niemand ausser Andreas will mich wiedersprechen????

Hahaha.....:p

Im Ernst. Was ich hätte sagen sollen ist, Trackbacks und Pingbacks sind ähnlich. Nur, sie haben unterschiedliche Standards. Sie sind auch fast gleich alt (2002). Nix neuer Begriff.;)

Scott

AA_
20.03.2009, 21:57
Niemand ausser Andreas will mich wiedersprechen????

Hahaha.....:p

Im Ernst. Was ich hätte sagen sollen ist, Trackbacks und Pingbacks sind ähnlich. Nur, sie haben unterschiedliche Standards. Sie sind auch fast gleich alt (2002). Nix neuer Begriff.;)

Scott

nun, wie man das nennt, was es hätte sein sollen, ist doch egal, wenns nicht funktioniert. ich hab es mir ganz bewusst geschenkt, darauf einzugehen :D

trackbacks und pingbacks sind nicht nur nicht ähnlich, sondern es sind zwei völlig unterschiedliche dienste. das problem allerdings fängt dort an, wo zwar diese begriffe verwendet werden, die umsetzung jedoch eine völlig andere ist als es in den standards definiert ist (wordpress sei da im speziellen genannt und vielleicht auch ein grund dafür, dass es eben mit wordpress einwandfrei funktioniert). hier eine (http://jeenaparadies.net/weblog/2005/oct/trackback-vs-pingback) und noch eine (http://www.ploetzli.ch/blog/archiv/trackback_pingback) von vielen hundert erklärungsversuchen.

am besten wäre es, wenn man es nicht erklärt, sondern erstmal in ordnung bringt.