Hallo Kollegen.
Ich denke ich hab hier ein ganz besonderes, selbstgemachtes Problem da ich bisher keine Lösung hier und per Googlen gefunden habe.
Ich schreibe meine URLs mit mod_rewrite um und zerpflücke danach die angehängten Parameter per PHP.
Beispiel:
zu
Hier habe ich das Problem die einzubindende Seite und die Parameter per PHP zu unterscheiden.
Ich möchte völlig flexibel bleiben im Bezug auf einzubindende Seiten und Anzahl der Parameter.
Alle Anfragen werden durch mod_rewrite auf eine index.php geleitet und anhand der angehängten Parameter eine weitere php Datei per include eingebunden und die restlichen Parameter in Variablen und zugehörige Werte verpackt.
Man könnte jetzt ein bestimmtes Zeichen in die URL einfügen an dem man zwischen einzubindender Seite und Parametern teilen kann, aber dann ist die URL streng gesehen nicht mehr korrekt.
Beispiel anhand eines + Zeichens an dem man Teilen könnte:
Ein weiterer Ansatz wäre es die komplette URL auf existenz einer PHP-Datei auf dem Webspace zu prüfen.
Beispiel:
Existiert Datei: produkte/moebel/stuehle/farbe/blau/maxpreis/400.php
Wenn ja, einbinden
Wenn nein nächster Schritt:
Existiert Datei: produkte/moebel/stuehle/farbe/blau/maxpreis.php
Wenn ja, einbinden und restliche Parameter in ne Var stecken
Wenn nein nächster Schritt:
Existiert Datei: produkte/moebel/stuehle/farbe/blau.php
Wenn ja, einbinden und restliche Parameter in ne Var stecken
und immer so weiter...
Hiermit wäre ich relativ flexibel was meine Verzeichnisstruktur etc. angeht aber ich denke bei hoher Besucherzahl ist das nicht besonders gut für die Performance und HDD.
Jetzt könnte man die Prüfung beim ersten Aufruf machen und die Ergebnisse in ne Datenbank schreiben. Beim zweiten Aufruf wird in der Datenbank nachgeschaut obs denn diese Datei gibt und je nachdem weiterverfahren.
Jetzt hab ich die Last vom Filesystem auf die Datenbank verschoben (eigentlich nicht da die Datenbank ja auch nur auf der HDD liegt).
Irgendwie hab ich das Gefühl das dies noch wesentlich besser geht und frage deshalb euch um Rat.
Ich denke ich hab hier ein ganz besonderes, selbstgemachtes Problem da ich bisher keine Lösung hier und per Googlen gefunden habe.
Ich schreibe meine URLs mit mod_rewrite um und zerpflücke danach die angehängten Parameter per PHP.
Beispiel:
Code:
http://www.meine-domain.de/index.php?include=produkte/moebel/stuehle&farbe=blau&maxpreis=400
Code:
http://www.meine-domain.de/produkte/moebel/stuehle/farbe/blau/maxpreis/400/
Ich möchte völlig flexibel bleiben im Bezug auf einzubindende Seiten und Anzahl der Parameter.
Alle Anfragen werden durch mod_rewrite auf eine index.php geleitet und anhand der angehängten Parameter eine weitere php Datei per include eingebunden und die restlichen Parameter in Variablen und zugehörige Werte verpackt.
Man könnte jetzt ein bestimmtes Zeichen in die URL einfügen an dem man zwischen einzubindender Seite und Parametern teilen kann, aber dann ist die URL streng gesehen nicht mehr korrekt.
Beispiel anhand eines + Zeichens an dem man Teilen könnte:
Code:
http://www.meine-domain.de/produkte/moebel/stuehle/+/farbe/blau/maxpreis/400/
Beispiel:
Code:
http://www.meine-domain.de/produkte/moebel/stuehle/farbe/blau/maxpreis/400/
Wenn ja, einbinden
Wenn nein nächster Schritt:
Existiert Datei: produkte/moebel/stuehle/farbe/blau/maxpreis.php
Wenn ja, einbinden und restliche Parameter in ne Var stecken
Wenn nein nächster Schritt:
Existiert Datei: produkte/moebel/stuehle/farbe/blau.php
Wenn ja, einbinden und restliche Parameter in ne Var stecken
und immer so weiter...
Hiermit wäre ich relativ flexibel was meine Verzeichnisstruktur etc. angeht aber ich denke bei hoher Besucherzahl ist das nicht besonders gut für die Performance und HDD.
Jetzt könnte man die Prüfung beim ersten Aufruf machen und die Ergebnisse in ne Datenbank schreiben. Beim zweiten Aufruf wird in der Datenbank nachgeschaut obs denn diese Datei gibt und je nachdem weiterverfahren.
Jetzt hab ich die Last vom Filesystem auf die Datenbank verschoben (eigentlich nicht da die Datenbank ja auch nur auf der HDD liegt).
Irgendwie hab ich das Gefühl das dies noch wesentlich besser geht und frage deshalb euch um Rat.
Kommentar