Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

mod_rewrite: Anfänger braucht Hilfe

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Neues Thema Antworten
manute
PostRank 10
PostRank 10
Beiträge: 3010
Registriert: 22.07.2003, 11:02
Wohnort: Hamburg

Beitrag von manute » 02.02.2004, 21:29

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... :-?

Anzeige von ABAKUS

von Anzeige von ABAKUS »


Hochwertiger Linkaufbau bei ABAKUS:
  • Google-konformer Linkaufbau
  • nachhaltiges Ranking
  • Linkbuilding Angebote zu fairen Preisen
  • internationale Backlinks
Wir bieten Beratung und Umsetzung.
Jetzt anfragen: 0511 / 300325-0

Marco
PostRank 4
PostRank 4
Beiträge: 199
Registriert: 21.01.2004, 23:23
Wohnort: Schweiz

Beitrag von Marco » 02.02.2004, 21:43

Versuch mal das:

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

Gruss
Marco

manute
PostRank 10
PostRank 10
Beiträge: 3010
Registriert: 22.07.2003, 11:02
Wohnort: Hamburg

Beitrag von manute » 02.02.2004, 21:58

danke, aber das hilft nichts. 404 die ganze zeit... :o

Anzeige von ABAKUS

von Anzeige von ABAKUS »

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

Jetzt anfragen: 0511 / 300325-0.


Southmedia
PostRank 10
PostRank 10
Beiträge: 7322
Registriert: 20.07.2003, 19:56

Beitrag von Southmedia » 02.02.2004, 22:05

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

manute
PostRank 10
PostRank 10
Beiträge: 3010
Registriert: 22.07.2003, 11:02
Wohnort: Hamburg

Beitrag von manute » 02.02.2004, 22:10

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

Marco
PostRank 4
PostRank 4
Beiträge: 199
Registriert: 21.01.2004, 23:23
Wohnort: Schweiz

Beitrag von Marco » 02.02.2004, 22:13

Das war wohl das Problem:
RewriteBase /usr/kunden/confixx/kunde2/html/domain/test/

Gruss
Marco

manute
PostRank 10
PostRank 10
Beiträge: 3010
Registriert: 22.07.2003, 11:02
Wohnort: Hamburg

Beitrag von manute » 02.02.2004, 22:27

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?

Southmedia
PostRank 10
PostRank 10
Beiträge: 7322
Registriert: 20.07.2003, 19:56

Beitrag von Southmedia » 02.02.2004, 22:41

(.*) 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"

manute
PostRank 10
PostRank 10
Beiträge: 3010
Registriert: 22.07.2003, 11:02
Wohnort: Hamburg

Beitrag von manute » 02.02.2004, 22:51

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?

manute
PostRank 10
PostRank 10
Beiträge: 3010
Registriert: 22.07.2003, 11:02
Wohnort: Hamburg

Beitrag von manute » 02.02.2004, 22:52

Ü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*

manute
PostRank 10
PostRank 10
Beiträge: 3010
Registriert: 22.07.2003, 11:02
Wohnort: Hamburg

Beitrag von manute » 02.02.2004, 23:02

es geht jetzt, dankeschön jan!

Ice Man
PostRank 9
PostRank 9
Beiträge: 2477
Registriert: 04.06.2003, 19:16

Beitrag von Ice Man » 02.02.2004, 23:57

mal ne dumme Frage, ist sowas sehr server lastig ?

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

thx und gute N8 :wink:

manute
PostRank 10
PostRank 10
Beiträge: 3010
Registriert: 22.07.2003, 11:02
Wohnort: Hamburg

Beitrag von manute » 03.02.2004, 00:10

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

Andy.C
PostRank 5
PostRank 5
Beiträge: 249
Registriert: 22.03.2005, 04:01
Wohnort: Berlin

Beitrag von Andy.C » 28.03.2005, 11:39

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ß

Andy.C
PostRank 5
PostRank 5
Beiträge: 249
Registriert: 22.03.2005, 04:01
Wohnort: Berlin

Beitrag von Andy.C » 28.03.2005, 12:42

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ß

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag