phpbar.de logo

Mailinglisten-Archive

[php] Links ersetzen mit Pregs

[php] Links ersetzen mit Pregs

Nico Haase nico.haase at gmx.de
Don Nov 20 20:13:02 CET 2003


Moin,
ich möchte mit folgender Methode meine Links anpassen:
1) Output-Buffering
2) vor der Ausgabe: $ausgabe = ob_get_contents();
3) Ersetzen aller Links, die nicht mit http://www.server.de beginnen, durch http://www.server.de + Ursprungslink
4) Ausgabe

Außer dem 3. Punkt klappt alles perfekt. Ich habe dabei das Problem, die Links durch Pregs zu finden, die nicht die Serveradresse enthalten, und nur diese dann zu ersetzen. Da einige Teile der Seite auch auf externe Adressen verweisen, kann ich nicht einfach alle Links ersetzen :-/
Warum muss das überhaupt sein? Ganz einfach: Meine Seite wird über script.php/variable aufgerufen, damit sie auch in jedem Fall von den Suchmaschinen indiziert wird. Nun versteht das ein Browser aber falsch und macht aus allen relativen Links script.php/neueseite.php, was ja Murks is. Und die <base href = "http://www.server.de"> - Angabe scheinen einige Browser ebenfalls zu vermurksen (so gesehen bei einer über AOL mit c&p verschickten Mail).
Über eine Lösung freut sich
Nico

php::bar PHP Wiki   -   Listenarchive