Unterstriche in Bindestriche ändern | Typo3

Eines der wichtigsten Anwendungsgebiete von mod_rewrite ist das umschreiben von dynamischen in statische URLs um "suchmaschinenfreundliche URLs" zu erzeugen. Aber was ist besser fürs Ranking? http://www.url.com/12_2.htm, http://www.url.com/url,12,2.htm oder doch lieber http://www.url.com/12/2/url/ Fragen zum URL-Design werden hier diskutiert.

Moderator: Super-Mod

Unterstriche in Bindestriche ändern | Typo3

Beitragvon sem » 16.06.2005 11:48

Hi!

stehe vor folgendem Problem: Ich möchte alle "_" in "-" ändern in den URLs. Die Seiten werden schon per mod_rewrite von index.php?id... in name.html umgeschrieben. (Die Seiten werden statisch von Typo3 simuliert).

Folgendes habe ich in der .htaccess :

Code: Alles auswählen
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule   ^[^/]*\.html$  index.php


Funktioniert wunderbar. Nun habe ich einige Tipps aus anderen Foren bekommen die aber leider nicht funktionierten. Ebenso habe ich auf dieser Seite einen Codeschnippsel dazu gefunden.

Habe nun folgendes probiert:

Code: Alles auswählen
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule   ^[^/]*\.html$  index.php

RewriteBase /
RewriteRule ^logodesign_glossar.htm$ /logodesign-glossar.html [R=301,L]


Die dort ->http://www.modrewrite.de/foren/ftopic82.html beschriebene Anleitung zum automatischen Umschreiben von allen "_" zu "-" hat ebenso leider nicht funktioniert.

Kann es sein dass das Typo3 da noch irgendwie reinpfuscht oder ist prinzipiell etwas falsch?

Ich hoffe ihr könnt mir weiterhelfen, danke schon mal für jeden Tipp den ihr habt :-).

Gruß sem
sem
 

Beitragvon Bob » 18.06.2005 15:26

Die Regel kann nicht gesehen werden, da die Regel darüber an index.php bereits greift.

Nebenbei musst du auch alle HTML-Links im Quelltext auf logodesign-glossar.html ändern, ein bloßer redirect ist nur dazu da, um bereits von SuMas indizierte Seiten (logodesign_glossar.htm) auf die neue URL zu lenken.


RewriteEngine On
RewriteRule ^logodesign_glossar\.htm$ /logodesign-glossar.html [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[^/]*\.html$ index.php
Bob
Moderator
Moderator
 
Beiträge: 5050
Registriert: 01.10.2004 13:10

Beitragvon sem » 28.06.2005 10:17

Hi!

Danke für die Hilfe :-)

funktioniert leider nicht. Hab die Datei umbenannt. Gebe ich im Browser die Datei mit Unterstrich ein, müsste ich auf die mit Bindestrich umgeleitet werden, liege ich da schon richtig?

Gruß sem
sem
.
.
 
Beiträge: 2
Registriert: 28.06.2005 10:15

Beitragvon Bob » 28.06.2005 13:23

müsste ich auf die mit Bindestrich umgeleitet werden, liege ich da schon richtig?
Ja, genau. Versuche mal ein rewriteBase einzubauen, je nach Server ist das nötig
Code: Alles auswählen
RewriteEngine On
RewriteBase /
RewriteRule ^logodesign_glossar\.htm$ /logodesign-glossar.html [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[^/]+\.html$ /index.php
Bob
Moderator
Moderator
 
Beiträge: 5050
Registriert: 01.10.2004 13:10

Beitragvon sem » 28.06.2005 13:59

hm, nö, leider. funktioniert auch nicht. :(

hab deinen code 1:1 übernommen.

gruß sem
sem
.
.
 
Beiträge: 2
Registriert: 28.06.2005 10:15


Zurück zu URL-Design

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste