Ich bin gerade dabei ein einfaches Skript zu schreiben mit dem jede art von URL in seine Bestandteile zerlegt werden können soll. Dabei setze ich auf das Vorhandensein von bestimmten Zeichen in der URL um das tun zu können. Könnt ihr mal Kritik üben wenn eine meiner Annahmen falsch ist?
Also von vorn angefangen kommt das Protokoll wenn angegeben. Identifizierbar durch das Vorkommen von "://" in der URL. Diese Kombination wird wohl nur einmal vorkommen können. Alles davor ist Protokollname.
Dann kommen mögliche Subdomains zu denen auch www gehört. Von "://" bis zum Topleveldomain sollte es keinen weiteren "/" geben. Das heißt alles dazwischen muss Domain und Subdomain sein. Von rechts angefangen auszuwerten braucht man nur die "." abgehen. Als erste kommt die TLD ("org"), dann die Domainbezeichnung ("selfhtml"), danach nur noch Subdomains.
Jetzt geht es um die Pfade. Man kann sich von "/" zu "/" hangeln und dadurch einen Pfad nach dem anderen einlesen. Sobald ein "." zwischen den "/" liegt wird es vermutlich der Dateiname mit Erweiterung sein. Obwohl ich mir nicht sicher bin dass es nicht doch sein könnte dass ein Verzeichnis einen "." enthält. Wenn man dann bei der Datei ist kann man Dateiname und Erweiterung ablesen. Sofern natürlich ein Dateiname angegeben wurde.
Kommt danach ein "?" gibt es GET-Parameter die immer getrennt sind durch "&". Und Variable und Wert sind getrennt durch "=".
Es kann aber auch sein dass nach dem Dateinamen noch ein "/" kommt und irgendwelche Zeichen. Wie man das nennt weiß ich nicht. Kann man auf dem Server auswerten diese Daten. Das dürfte dann aber nur unter Angabe eines Dateinamens funktionieren nehme ich an.
Kann ich das so benutzen oder habe ich etwas als gegeben angesehen was nicht der Fall ist?
Danke!
Sebastian