URL-Rewriting mit Hilfe von mod_rewrite und PHP

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • URL-Rewriting mit Hilfe von mod_rewrite und PHP

    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:

    Code:
    http://www.meine-domain.de/index.php?include=produkte/moebel/stuehle&farbe=blau&maxpreis=400
    zu

    Code:
    http://www.meine-domain.de/produkte/moebel/stuehle/farbe/blau/maxpreis/400/
    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:
    Code:
    http://www.meine-domain.de/produkte/moebel/stuehle/+/farbe/blau/maxpreis/400/
    Ein weiterer Ansatz wäre es die komplette URL auf existenz einer PHP-Datei auf dem Webspace zu prüfen.

    Beispiel:
    Code:
    http://www.meine-domain.de/produkte/moebel/stuehle/farbe/blau/maxpreis/400/
    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.
    Zuletzt geändert von Shock2k; 14.05.2009, 21:45.

  • #2
    Die Lösung fällt einem immer in Momenten ein, indem man gar nicht an das Thema denkt:

    Code:
    http://www.meine-domain.de/produkte/moebel/stuehle-farbe-blau-maxpreis-400.html
    Ich denk diese Form wird gerne von Suchmaschinen gesehen. Trennen kann man am ersten - . Was davor kommt ist Dateipfade und danach Parameter und Werte.

    Kommentar


    • #3
      ich löse das bei mir so:
      /produkte/moebel/stuehle/index.html,farbe=blau,maxpreis=400

      Kommentar

      Lädt...
      X