MudGuard: Externen Link erkennen

Beitrag lesen

Hi,

Moin,

da gibt es die Möglichkeit, dass der User einen Link eingibt. Bei externen Links möchte ich eine kleine Grafik anzeigen, die symbolisiert, dass dieser Link nach außen führt.
Problem wie erkenne ich externe links?

Ich habe schon ganz grob 3 Merkmale.

  1. der Link enthält ein http am Anfang

Gegenbeispiel: mailto:, ftp:, ...
Außerdem: http://deinserver.test/andereSeite.html

  1. der Link enthält ein www

Gegenbeispiel: http://google.de/

  1. der Link hat am Anfang kein Slash

Gegenbeispiel: bla.html (also im gleichen Verzeichnis)

Ich denke damit decke ich schon recht viel ab. Die Merkmale sind jedoch ungenau.

EXTREM ungenau.

  1. Der User könnte mittels http auf die eigene Domain verlinken. Dann wäre es ein interner link mit http.

Oder ein anderes Protokoll verwenden.

2- Das www ist nicht zwingend, somit kein zuverlässiger Indikator.

Richtig.

  1. Externe Links könnten mit // anfangen.

Und interne ohne.

Gibt es eventuell einen Regulären Ausdruck, der mir sagt ob es externe Links sind?

Du müßtest einen absoluten Link daraus machen, und dann prüfen, ob die Domain dieselbe ist.

cu,
Andreas

--
Warum nennt sich Andreas hier MudGuard?
O o ostern ...
Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.