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

Denkfehler bei mod_rewrite

Hier können Sie Ihre Fragen zum Thema Suchmaschinenoptimierung (SEO) / Positionierung stellen
workershop
PostRank 8
PostRank 8
Beiträge: 697
Registriert: 19.11.2004, 19:08
Wohnort: Leipzig

Beitrag von workershop » 07.02.2005, 14:29

Hallo.
Ich komme hier nicht weiter. Ich möchte ein Script auf einem Unterverzeichnis meines Shops laufen lassen. Um die Seiten von dem Script Suchmaschinenfreundlich zu machen benutze ich mod _rewrite im scriptordner.

Der Pfad schaut so aus: www.domain.de/script/

die htaccess.
RewriteEngine On
RewriteBase /
RewriteRule ^/test.html$ /add_link.php

der Link zum Test schaut so aus: www.domain.de/script/test.html


Warum funktioniert das nicht?

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.


Christophe
PostRank 5
PostRank 5
Beiträge: 246
Registriert: 13.12.2004, 13:07

Beitrag von Christophe » 07.02.2005, 14:34

afaik müsste es entweder

RewriteRule ^/script/test.html$ /add_link.php

oder

RewriteRule /test.html$ /add_link.php

heißen. (Je nachdem, was du machen willst.)

^ bedeutet am genau am Anfang des Ausdrucks

workershop
PostRank 8
PostRank 8
Beiträge: 697
Registriert: 19.11.2004, 19:08
Wohnort: Leipzig

Beitrag von workershop » 07.02.2005, 14:39

nein, das funktioniert auch nicht. 404 Fehler

workershop
PostRank 8
PostRank 8
Beiträge: 697
Registriert: 19.11.2004, 19:08
Wohnort: Leipzig

Beitrag von workershop » 07.02.2005, 14:44

jetzt geht es:

RewriteCond %{REQUEST_FILENAME} /script/test.html
RewriteRule (.*) /script/add_link.php [L]

Christophe
PostRank 5
PostRank 5
Beiträge: 246
Registriert: 13.12.2004, 13:07

Beitrag von Christophe » 07.02.2005, 14:49

mh, hast du den Apachen neu gestartet? Zumindest wenn du die Sachen in httpd.conf zu stehen hast.

RewriteBase habe ich noch nie benutzt, kann ich nichts zu sagen, ansonsten ist vielleicht diese Seite ganz hilfreich.

Christophe

workershop
PostRank 8
PostRank 8
Beiträge: 697
Registriert: 19.11.2004, 19:08
Wohnort: Leipzig

Beitrag von workershop » 07.02.2005, 14:51

Ich bin bei 1und1, da kann man nichts neu starten. Aber jetz geht es ja.

bruko
PostRank 5
PostRank 5
Beiträge: 211
Registriert: 11.10.2003, 09:02

Beitrag von bruko » 07.02.2005, 14:53

Hi,
statt:
workershop hat geschrieben: RewriteRule ^/test.html$ /add_link.php
RewriteRule ^/test\.html$ /add_link.php
den Punkt escapen.

Caterham
PostRank 5
PostRank 5
Beiträge: 329
Registriert: 20.09.2004, 19:12

Beitrag von Caterham » 08.02.2005, 16:49

Im per-dir kontext aber immer ohne leading slash

Code: Alles auswählen

RewriteRule ^test\.html$ /add_link.php [L]
Grüße
Robert

workershop
PostRank 8
PostRank 8
Beiträge: 697
Registriert: 19.11.2004, 19:08
Wohnort: Leipzig

Beitrag von workershop » 09.02.2005, 11:49

Danke für eure Hilfe.

Jetzt sind es die Kategorien.
In unseren Shopverzeichnissen funktioniert das alles schon immer, nur nicht in dem Teil, was in einem Unterverzeichnis liegt.

Was ist hieran falsch. 404 Fehlermeldung.
RewriteRule ^/script/test-(.*)_1.html$ /script/show_cat.php?cat_id=$1&page= [L]

Caterham
PostRank 5
PostRank 5
Beiträge: 329
Registriert: 20.09.2004, 19:12

Beitrag von Caterham » 09.02.2005, 17:06

- auch hier muss der leading slash - also /script weg. Das gilt für alle Regeln in der .htaccess-Datei.

Code: Alles auswählen

RewriteRule ^script/test-(.+)_1\.html$ /script/show_cat.php?cat_id=$1&page= [L]

workershop
PostRank 8
PostRank 8
Beiträge: 697
Registriert: 19.11.2004, 19:08
Wohnort: Leipzig

Beitrag von workershop » 10.02.2005, 10:02

Vielen dank für deine Hilfe. Jetzt funktioniert es. Ich hatte auch den Fehler gemacht die htaccess im Verzeichnis vom Script zu haben und nicht im Rootverzeichnis von der Hauptdomain.

Caterham
PostRank 5
PostRank 5
Beiträge: 329
Registriert: 20.09.2004, 19:12

Beitrag von Caterham » 10.02.2005, 14:35

Ich hatte auch den Fehler gemacht die htaccess im Verzeichnis vom Script zu haben und nicht im Rootverzeichnis von der Hauptdomain
Für den Fall (wenn die .htaccess im Unterverzeichnis läge) müsstest du statt
^script/test-(.+)_1\.html$
folgendes verwenden:

Code: Alles auswählen

^test-(.+)_1\.html$

lomo
PostRank 6
PostRank 6
Beiträge: 346
Registriert: 05.08.2004, 13:01

Beitrag von lomo » 23.02.2005, 00:05

Hi,

ich wollte für 'ne Rewrite-Frage nicht schon wieder einen Thread aufmachen.

Wer kann sagen, wie eine Rewrite-Regel für folgende Anweisung aussieht:

wenn mydatei.cgi?abcd abgerufen wird, dann leite um auf /verzeichnis/anderedatei.php/abcd

"abcd" kann verschiedene Zeichen beinhalten (Gross- Kleinbuchstaben sowie Ziffern). Der Rest bleibt konstant.

Caterham
PostRank 5
PostRank 5
Beiträge: 329
Registriert: 20.09.2004, 19:12

Beitrag von Caterham » 23.02.2005, 00:14

:)

Code: Alles auswählen

RewriteCond %{QUERY_STRING} ^(.+)
RewriteRule ^cgi-bin/mydatei\.cgi$ /verzichnis/anderedatei.php/%1? [R=301,L]
--> www.modrewrite.de
Zuletzt geändert von Caterham am 23.02.2005, 00:44, insgesamt 1-mal geändert.

lomo
PostRank 6
PostRank 6
Beiträge: 346
Registriert: 05.08.2004, 13:01

Beitrag von lomo » 23.02.2005, 00:28

Vielen Dank!

Folgender URL wird im Browser nach der Anwendung der Regel angezeigt: https://www. mydomain.de/verzeichnis/anderedatei.php/abcd?abcd

Es wird zwar die richtige Seite auch fehlerlos angezeigt (wunderbar), aber der Schwanz in der Form "?abcd" ist ja überflüssig. Wie werde ich den los?

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag