Links weiterverfolgen

  • Guten Tag!


    Ich stehe gerade vor folgendem Problem:
    Sagen wir, ich habe einen Link in der Form

    Zitat


    was einen Browser dann auf http://www.seite2.de (als Beispiel) weiterleiten würde.


    Mit [PHP]$inhalt = file_get_contents('http://seite1.de/klick.php?i=77448974');
    echo $inhalt;[/PHP] wird der Inhalt von http://www.seite2.de angezeigt. Soweit so gut. Das wollte ich auch so.
    Wenn nun aber Links auf seite2 sind, die nur relativ angegeben sind, so funktionieren sie nicht.
    Gibt es daher eine Möglichkeit in PHP festzustellen, auf welche URL ein Link nach dem obrigen Schema verweist?

  • Ja. Mit preg_match würde ich einfach gucken, ob die URL komplett ist. D.h., ob sie ein Protokoll wie "http://" enthält.
    Sonst einfach davorklemmen.

    Mein Server:
    v(olks)Server 1. Serie: 2,5GHz, 1024MB RAM, 1024MB Swap, 2x60GB-Raid1-HDD, Traffic-Flat
    Node:
    78.46.117.9x | hos-tr2.ex3k4.rz7.hetzner.de

  • Warum nimmst du nicht einen echten Proxy, mod_proxy für den Apache oder leitest direkt auf die Seite weiter?
    Ansonsten sag uns doch einmal, was genau du vorhast ;)



    MfG Christian

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • Zitat von killerbees19;24863


    Ansonsten sag uns doch einmal, was genau du vorhast ;)


    Also Seite1.de (aus dem Beispiel oben) entspricht einer Bilder-Suchmaschine. Damit die (wohl für ihre Statistik) wissen wer wo draufgeht, haben die so einen Ref-Link zwischengeschaltet in der Form von

    Zitat


    Google macht das bei der Bildersuche ja auch.
    Suche ich also nun nach "Pfefferminze", zeigt die SuMa auf ne Menge Seite wo es Bilder von Pfefferminze gibt. Mein Script soll nun alle Links wo es Pfefferminz-Bilder gibt als Liste darstellen. Und eben mit der jeweils absoluten Adresse.

  • Kurze Zwischenfrage: Ist das erlaubt?
    Viele Suchmaschinen (wenn nicht alle) verbieten eine solche Nutzung (und zwar aus einleuchtenden Gründen angefangen von Statistiken bis hin zu Werbebannern).

    Mein Server:
    v(olks)Server 1. Serie: 2,5GHz, 1024MB RAM, 1024MB Swap, 2x60GB-Raid1-HDD, Traffic-Flat
    Node:
    78.46.117.9x | hos-tr2.ex3k4.rz7.hetzner.de

  • Zitat von Artimis;24870

    Kurze Zwischenfrage: Ist das erlaubt?


    Und genau deshalb gebe ich in diesem Thread ab jetzt keine Hilfestellungen mehr ;)



    MfG Christian

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • Ich möchte euch die Lösung, wie man (zu meiner Verwunderung doch recht simpel) Linkverkürzer wieder lang bekommt nicht vorenthalten*. Einzige Voraussetzung wäre, dass sie eine 300er Weiterleitung benutzen.


    [PHP]<?php
    $url = "http://goo.gl/9QLw"; //Hier Linkverkürzer URL
    $headers = get_headers($url); //empfangene Header
    //Die Header kommen in einem Array. Das durchsuchen wir nach der neuen "Location" und geben uns das Ergebnis aus.
    $i = 0;


    do {
    ++$i;
    } while (substr($headers[$i], 0, 5)!="Locat"); //Gucken ob in diesem Array-Feld die neue Location steht.


    echo substr($headers[$i], 10);


    ?>[/PHP]


    *natürlich funktioniert das auch, um Suchmaschinen-Links zu folgen.