[TYPO3-german] Verzweifle an RewriteRules und RealURL

g4-lisz at tonarchiv.ch g4-lisz at tonarchiv.ch
Fri Jan 27 12:56:34 CET 2012


Hallo Leute,

hoffe, mir kann jemand weiterhelfen:

Um die URLs des alten CMS weiterhin beantworten zu können, möchte ich 
Anfragen der Form

     "Klinik-Siloah-Siloah-Aerzte-AG-_Guemligen_3073.info840.html%26lang=16"

in die Form

     "it/portalid-forwarder/portalid/840" (realURL)
oder
     "index.php?id=50&L=2&tx_hplusinfo_fe_spitalinfo[portalid]=840" (direkt)

umwandeln.

Folgendes Mapping soll stattfinden:

lang=14 oder "de/" oder nichts => default Sprache
lang=15 oder "fr/" => L=1
lang=16 oder "it/" => L=2

.info840.html => tx_hplusinfo_fe_spitalinfo[portalid]=840

Mit speaking URLs ("it/portalid-forwarder/portalid/840") habe ich es gar 
nicht erst zum laufen gekriegt. Via index.php hatte ich etwas mehr Erfolg.

Mein .htaccess sieht folgendermassen aus:

       1 RewriteEngine On
       2
       3 RewriteCond %{REQUEST_URI} ^.*lang=15.*$ [OR]
       4 RewriteCond %{REQUEST_URI} ^fr/.*$
       5 RewriteRule ^(.*)\.info([0-9]+)\.html(.*)$ 
/index.php?id=50&L=1&tx_hplusinfo_fe_spitalinfo[portalid]=$2
       6
       7 RewriteCond %{REQUEST_URI} ^.*lang=16.*$ [OR]
       8 RewriteCond %{REQUEST_URI} ^it/.*$
       9 RewriteRule ^(.*)\.info([0-9]+)\.html(.*)$ 
/index.php?id=50&L=2&tx_hplusinfo_fe_spitalinfo[portalid]=$2
      10
      11 RewriteRule ^(.*)\.info([0-9]+)\.html(.*)$ 
/index.php?id=50&tx_hplusinfo_fe_spitalinfo[portalid]=$2
      12
      13 RewriteRule ^typo3$ - [L]
      14 RewriteRule ^typo3/.*$ - [L]
      15 RewriteCond %{REQUEST_FILENAME} !-f
      16 RewriteCond %{REQUEST_FILENAME} !-d
      17 RewriteCond %{REQUEST_FILENAME} !-l
      18 RewriteRule .* index.php

Das klappt leider nur bei Anfragen der Form 
"Klinik-Siloah-Siloah-Aerzte-AG-_Guemligen_3073.info840.html%26lang=16". 
Eine Anfrage der Default-Sprache (also ohne "lang=16") führt zu einem 
Fehler bzw. auf die Startseite im CMS.
Ebensowenig funktioniert die Form 
"it/Klinik-Siloah-Siloah-Aerzte-AG-_Guemligen_3073.info840.html", also 
mit "it/"-Präfix. Hier kommt der Fehler:
     Segment "Klinik-Siloah-Siloah-Aerzte-AG-_Guemligen_3073.info844" 
was not a keyword for a postVarSet as expected on page with id=1.
D.h. da findet offenbar gar kein Rewrite statt.

Ich habe den Eindruck, dass mit da Typo3 irgendwie "reinfummelt", mir 
ist aber völlig unklar, wie genau. Oder ich habe irgendwas prinzipiell 
nicht verstanden... :(

Für jeden Hinweis dankbar,
Till





More information about the TYPO3-german mailing list