Seite 1 von 1

mod_rewrite: Anfänger braucht Hilfe

Verfasst: 02.02.2004, 21:29
von manute
tach!

ich hab url-rewriting bisher immer über forcetype gemacht, doch jetzt wollte ich auch mal mod_rewrite ausprobieren.
doch ich bin leider grad verzweifelt. habe 10 tutorials vor mir, in denen alles mögliche, aber nicht die ersten schritte beschrieben werden.
das ist jetzt meine .htaccess zb:

RewriteEngine On
Options +FollowSymlinks
RewriteBase /usr/kunden/confixx/kunde2/html/domain/test/

RewriteRule ^(.*)(\.html?)$ wurst.php?id=$1

ich dachte, das würde so funktionieren, dass ich jetzt 8.html aufrufe und er wurst.php?id=8 anzeigt. geht aber nicht. er bringt die ganze zeit entweder error 500 oder 404.
muss in der rewriterule nochmal die komplette url stehen oder reicht das in der rewritebase? wo sonst könnte der fehler sein?
danke für eure tipps, bin grad richtig verzweifelt... :-?

Verfasst:
von

Verfasst: 02.02.2004, 21:43
von Marco
Versuch mal das:

RewriteRule ^(.*).html$ /wurst.php?id=$1

Gruss
Marco

Verfasst: 02.02.2004, 21:58
von manute
danke, aber das hilft nichts. 404 die ganze zeit... :o

Verfasst:
von

Verfasst: 02.02.2004, 22:05
von Southmedia

Code: Alles auswählen

RewriteEngine on

RewriteRule ^(.*).html$ wurst.php?id=$1
Das in die htaccess und dann folgende URLs:
https://www.domain.tld/lala.htm
statt
https://www.domain.tld/wurst.php?id=lala

Verfasst: 02.02.2004, 22:10
von manute
juuuuuuuuuuuuuuhuuuuuuuuuuuu! :D

danke jan. hätt ich jetzt nicht gedacht, dass das geht. eigentlich hast du ja nur empfohlen, die rewritebae wegzulassen. aber warum es funktioniert, ist mir erstmal egal, es funktioniiiiiert, juhu! :D

Verfasst: 02.02.2004, 22:13
von Marco
Das war wohl das Problem:
RewriteBase /usr/kunden/confixx/kunde2/html/domain/test/

Gruss
Marco

Verfasst: 02.02.2004, 22:27
von manute
Das war wohl das Problem:
RewriteBase /usr/kunden/confixx/kunde2/html/domain/test/
wo soll da ein problem sein? der pfad stimmte schon...

noch eine frage:
ich habe jetzt folgende rule

RewriteRule ^forum_entry-(.*)-(.*)-(.*)-(.*).html$ wurst.php?id=$1&page=$2&category=$3&order=$4 [L]

jetzt übergibt er mir immer den ganzen dateinamen wie forum_entry-28-0-all-time in die variable id, dabei sollte das ja eigentlich an den - getrennt und auch den anderen parametern zugeordnet werden. das ist jetzt vermutlich ein fehler in der rule, oder?

Verfasst: 02.02.2004, 22:41
von Southmedia
(.*) steht für "alle Zeichen" und ist deshalb auch nicht begrenzt nach hinten...
Ich vermute mal es geht hier nur um Zahlen, da wäre wohl ein ([0-9]+) besser.

Übrigens, damit du auch wirklich was lernst:
+ steht für "1 oder mehr"
* steht für "0 oder mehr"

Verfasst: 02.02.2004, 22:51
von manute
hmmm okay, es wird wohl was damit zu tun haben. abba ganz so einfach ist es jetzt nicht. folgende rule (die ersten beiden vars sind zahlen, 3 und 4 sind wörter:

RewriteRule ^forum_entry-([0-9]*)-([0-9]*)-([a-z]*)-([a-z]*).html$ wurst.php?id=$1&page=$2&category=$3&order=$4 [L]

von der wurst.php lasse ich mir nun nacheinander die variablen ausgeben, da steht jetzt:

id: forum_entry-28-0-all-time
page:
cat:
order:

das bedeutet, er nimmt auch schon das "forum_entry" als variable mit, was ja überhaupt nicht sein sollte... wo ist der fehler?

Verfasst: 02.02.2004, 22:52
von manute
Übrigens, damit du auch wirklich was lernst:
+ steht für "1 oder mehr"
* steht für "0 oder mehr"
hey du alter editierer. :wink: ich verstehe... *lern*

Verfasst: 02.02.2004, 23:02
von manute
es geht jetzt, dankeschön jan!

Verfasst: 02.02.2004, 23:57
von Ice Man
mal ne dumme Frage, ist sowas sehr server lastig ?

kann man in % sagen, wie viel mehr dadurch entsteht ?

thx und gute N8 :wink:

Verfasst: 03.02.2004, 00:10
von manute
zu mod_rewrite kann ich (noch) nichts sagen. aber ich mache url-rewriting auf einer sehr großen seiten mit forcetype und php, da konnte ich keine verlangsamung feststellen.
sind ja auch nur 4 zeilen code oder so, ich denke das ist kein problem.
mal abgesehen von der extremen mehrbelastung durch den googlebot, aber den empfangen wir ja alle mit offenen armen... :D

mod_rewrite: Anfänger braucht Hilfe

Verfasst: 28.03.2005, 11:39
von Andy.C
Bei mir Prügelt er Immer die 404 Rein.
Mit RewriteBase Error 500

Ich habe auch die httpd.conf entsrepchend verändert.
Ergebnisslos bleibt das.

Ich habe bei diesem Server bisher immer das Problem gehabt das ich es nicht Ordentlich zum Laufen bekommen habe.
bei meinem Alten IPX server Funktionierte das Tedelos.

Entschuldigt Bitte wenn ich diesen Alten Thread hervorgekramt habe (G**gle ist Schuld) :P

Könnte mir evtl. jemand erläutern auf was ich noch achten muss was ich evtl. vergessen habe?


die .htacces

RewriteEngine On
RewriteRule ^(.*).html$ php.php?id=$1


oder dieses

RewriteEngine On
hallo(.*).html php.php

gruß

Verfasst: 28.03.2005, 12:42
von Andy.C
Selbst gelöst.
Problem bei diesem Server ist das ich ein Paar Virtuelle Server hinzugefügt habe, Sie jedoch nicht für AllowOverride zugelassen wurden.


Gruß