Seite 1 von 2

Mod_rewrite Problem

Verfasst: 19.12.2004, 16:47
von workershop
Ich habe im Shopverzeichnis die Links mit Mod_rewrite umgestellt:
RewriteEngine On
RewriteBase /
RewriteRule ^einkaufen(.*).htm$ show_cat.php?cat_id=$1

Beispiel: https://www.workershop.de/einkaufen114.htm

Jetzt haben wir aber das Problem, das wenn es in der Kategorien mehr als eine Seite gibt diese nicht angezeigt werden, weil der Link jetzt so ausschaut:
https://www.workershop.de/einkaufen114.htm&page=2

Was muss ich jetzt noch in die .htaccess reinschreiben, damit das auch funktioniert?

Der Link im Script schaut zur Zeit noch so aus:
<a href="./einkaufen{$this_cat['cat_id']}.htm&page={$page_id}">{$page_id}</a>

Dieser müsste ja dann auch noch geändert werden.


Ronny

Verfasst:
von

Re: Mod_rewrite Problem

Verfasst: 19.12.2004, 16:52
von DarkCrystal
Hallo
Ich denke es sollte so funktionieren:

RewriteEngine On
RewriteBase /
RewriteRule ^einkaufen(.*)_(.*).htm$ show_cat.php?cat_id=$1&page=$2

Beispiel: https://www.workershop.de/einkaufen114_2.htm

Ich hoffe ich hab richtig verstanden, was du vorhast, aber so in etwa sollte es funktionieren.

Ansonsten schau mal hier: https://www.tutorials.de/tutorials21730.html

LG
Chris

Verfasst: 19.12.2004, 16:55
von workershop
Und wie schaut dann der Link im Script aus, den ich ändern muss?

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Verfasst: 19.12.2004, 16:58
von DarkCrystal
Ich würde ihn so bauen:

<a href="./einkaufen{$this_cat['cat_id']}_{$page_id}.htm">{$page_id}</a>

LG
Chris

Verfasst: 19.12.2004, 17:01
von workershop
Nein Funktioniert nicht, der geht wieder auf die gleiche Seite zurück:

Siehe unten _nächste Seite: https://www.workershop.de/einkaufen114.htm

Verfasst: 19.12.2004, 17:03
von workershop
Die htacess schaut ja jetzt so aus:

RewriteEngine On
RewriteBase /
RewriteRule ^einkaufen(.*).htm$ show_cat.php?cat_id=$1
RewriteRule ^einkaufen(.*)_(.*).htm$ show_cat.php?cat_id=$1&page=$2

Verfasst: 19.12.2004, 17:06
von DarkCrystal
Dann versuch mal:

RewriteEngine On
RewriteBase /
RewriteRule ^einkaufen(.*).htm$ show_cat.php?cat_id=$1
RewriteRule ^einkaufen(.*).htm&page=(.*)$ show_cat.php?cat_id=$1&page=$2

Verfasst: 19.12.2004, 17:10
von workershop
Und wie sollte der Link dazu ausschauen?

Verfasst: 19.12.2004, 17:12
von workershop
Funktioniert, mit dem Originallink im Script. Danke für Eure Hilfe.

Ist der Link: https://www.workershop.de/einkaufen114.htm

eigentlich so optimal, oder sollte ich den Aufbau ändern?

Verfasst: 19.12.2004, 17:13
von DarkCrystal
So wie er gerade aktuell aussieht.

Ich denke nur, dass jetzt die Umbau-Regel deinem Link angepasst ist.

Verfasst: 19.12.2004, 17:16
von workershop
Ist doch nicht so gut. Wenn ich auf zurück klicke komme ich auf diese Seite:

https://www.workershop.de/einkaufen114.htm&page=1

sollte aber wieder diese sein: https://www.workershop.de/einkaufen114.htm

Re: Mod_rewrite Problem

Verfasst: 19.12.2004, 17:22
von DarkCrystal
Nimm wieder das:

RewriteEngine On
RewriteBase /
RewriteRule ^einkaufen(.*)_(.*).htm$ show_cat.php?cat_id=$1&page=$2


Und bau das Script überall so um, dass die Links nur noch so generiert werden:
<a href="./einkaufen{$this_cat['cat_id']}_{$page_id}.htm">{$page_id}</a>

Mit überall meine ich überall, wo solche Links generiert werden. Ich weiss ja nicht an welchen Stellen das überall passiert, aber sie müssen dann einheitlich sein.

Sonst geht dir ja auch der Vorteil von mod_rewrite verloren, da wieder offensichtlich Parameter übergeben werden, was man damit ja verhindern will.
:D

Verfasst: 19.12.2004, 17:32
von workershop
Ich habe die jetzt so eingebaut: <a href="./einkaufen{$this_cat['cat_id']}_{$page_id}.htm">{$page_id} class="link">{$row['name']}</a>


funktioniert aber nicht:

vorher waren die so: <a href="./einkaufen{$row['cat_id']}.htm" class="link">{$row['name']}</a>

Re: Mod_rewrite Problem

Verfasst: 19.12.2004, 17:42
von DarkCrystal
RewriteEngine On
RewriteBase /
RewriteRule ^einkaufen(.*)_(.*).(\.htm?)$ show_cat.php?cat_id=$1&page=$2

Bau mal das...

Verfasst: 19.12.2004, 17:44
von workershop
Habe es gerade wieder in den Originalzustand gesetzt, damit es nicht zu lange nicht funktioniert.

Noch mal von vorn
Originale .htaccess:
RewriteEngine On
RewriteBase /
RewriteRule ^einkaufen(.*).htm$ show_cat.php?cat_id=$1


originale Kategorielinks:
<a href="./einkaufen{$row['cat_id']}.htm" class="link">{$row['name']}</a>

originale Links für Seite 2 usw, die ja nicht funktionieren:
<a href="./einkaufen{$this_cat['cat_id']}.htm&page={$page_id}">{$page_id}</a>


Tip von euch:
htaccess:
RewriteEngine On
RewriteBase /
RewriteRule ^einkaufen(.*)_(.*).htm$ show_cat.php?cat_id=$1&page=$2

und überall diesen Link (funktioniert aber nicht) einbauen:
<a href="./einkaufen{$this_cat['cat_id']}_{$page_id}.htm">{$page_id}</a>

Für die Kategorien müsste er ja anders ausschauen.