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

rewriteRule

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
Neues Thema Antworten
hollag
PostRank 1
PostRank 1
Beiträge: 6
Registriert: 04.09.2005, 15:52

Beitrag von hollag » 04.09.2005, 16:03

Hallo,
habe es endlich nach stunden geschafft eine umleitung zu bekommen.
Was aber nicht ganz funktioniert ist das alles umgeleitet wird, auch dateien die existieren.

Beispiel:
https://www.domain.ee/Computer/test/542.html #542.html ist vorhanden und wird auch auf https://www.domain.ee/Computer/test/ umgeleitet

Es soll nur umgeleitet werden wenn die dateiendung nicht vorhanden ist.

Code: Alles auswählen

rewriteEngine on
rewriteBase /
rewriteRule ^Computer/([A-z]+)/([0-9]+).html /Computer/$1
Danke im Voraus

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.


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

Beitrag von Caterham » 04.09.2005, 16:26

Hi.
Es soll nur umgeleitet werden wenn die dateiendung nicht vorhanden ist.
Wenn die Dateiendung nicht vorhanden ist oder wenn die Datei nicht vorhanden ist? Für letzteren Fall:

Code: Alles auswählen

RewriteEngine on
# ...REQUEST_FILENAME ist keine existierende Datei...
RewriteCond %{REQUEST_FILENAME} !-f
rewriteRule ^Computer/([A-Za-z]+)/([0-9]+)\.html$ /Computer/$1 [L]
-> www.modrewrite.de

Grüße
Robert

hollag
PostRank 1
PostRank 1
Beiträge: 6
Registriert: 04.09.2005, 15:52

Beitrag von hollag » 04.09.2005, 16:58

Danke für die schnelle Hilfe,
habe bei www.modrewrite.de geschaut aber nichts gefunden.

Habe eins vergessen.
was ist wenn es beliebig viele verzeichnisse sind

https://www.domain.ee/Computer/test/
https://www.domain.ee/Computer/test/oder/noch/eins/

Die verzeichnistiefe ist 14

Danke

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

Beitrag von Caterham » 04.09.2005, 17:01

Die RewriteRule greift dann nicht. Du müsstest dann den Slash mit in die Zeichenklasse aufnehmen.

Code: Alles auswählen

[A-Za-z/]

hollag
PostRank 1
PostRank 1
Beiträge: 6
Registriert: 04.09.2005, 15:52

Beitrag von hollag » 04.09.2005, 17:06

Danke Caterham
Ohne dich hätte ich es nie geschafft

hollag
PostRank 1
PostRank 1
Beiträge: 6
Registriert: 04.09.2005, 15:52

Beitrag von hollag » 04.09.2005, 19:44

das mit der dateiendung hat sehr gut funktioniert aber wie mache ich das mit verzeichnissen

habe das eingefügt aber es funktioniert nicht. Das -d ist doch für verzeichnisse

Code: Alles auswählen

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d
rewriteRule ^Computer/([A-Za-z]+)/([A-Za-z]+)\.html$ /Computer/$1 [L]
Danke

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

Beitrag von Caterham » 04.09.2005, 22:33

aber wie mache ich das mit verzeichnissen
Da greift die Regel ja schon mal nicht, d.h. endweder nutzt du zwei Regeln oder du machst '.html' optional. Da scheinbar deine Zeichen am Ende auch andere sind (oben [0-9] hier [A-Za-z]) würde ich ehr zwei Regeln nutzen:

Code: Alles auswählen

RewriteEngine on
# ...REQUEST_FILENAME ist keine existierende Datei...
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^Computer/([A-Za-z/]+)/([0-9]+)\.html$ /Computer/$1 [L]

# ...REQUEST_FILENAME ist kein existierendes Verzeichnis...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^Computer/([A-Za-z/]+)/([A-Za-z]+)/?$ /Computer/$1 [L]

hollag
PostRank 1
PostRank 1
Beiträge: 6
Registriert: 04.09.2005, 15:52

Beitrag von hollag » 24.09.2005, 12:10

Hallo,
es träten im nachhinein immer wieder Problem auf.

RewriteCond %{REQUEST_FILENAME} !-f
rewriteRule ^Shopping/([A-Za-z/_0-9,]+)/([0-9]+)\.html$ Shopping/$1 [L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^Shopping/([A-Za-z/_0-9,]+)/([A-Za-z_,0-9]+)/?$ /Shopping/$1 [L]

Das problem ist jetzt das
/Shopping/General_Merchandises/General_Auto/U/9215.html auf
/Shopping/General_Merchandises/General_Auto_U/9215.html gändert wurde oder eben nur
/Shopping/General_Merchandises/General_Auto/U/ auf
/Shopping/General_Merchandises/General_Auto_U/ . Es können verschiedene ordnerebenen(Tiefen) sein. Die andern rewrites funktionieren bei der URL nicht. Habe es versucht umzuschreiben aber immer 500 Server Error

Der Ordner könnte auch so aussehen, also jede mögliche Art von ordner und HTML datei Manipulation
/Shopping/General_Merchandises/General_Auto/U/test/und_noch/ein_test

Danke

hollag
PostRank 1
PostRank 1
Beiträge: 6
Registriert: 04.09.2005, 15:52

Beitrag von hollag » 25.09.2005, 13:25

Habe das jetzt so gemacht, funktioniert aber nicht ganz richtig mit den andern Regeln

Code: Alles auswählen

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^Shopping/([A-Za-z/_0-9,]+)/([A-Za-z_,0-9]+)/?$ /Shopping/$1 [C]
RewriteRule ^Shopping/([A-Za-z/_0-9,]+)/([A-Za-z_,0-9]+) /Shopping/$1/$1_$2 [C]
RewriteRule ^Shopping/([A-Za-z/_0-9,]+)/([0-9]+)\.html$ /Shopping/$1

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag