Ergebnis 1 bis 5 von 5

Thema: realUrl / tt_news mehrsprachlich mit nicht-redundantem Caching

      
  1. #1
    tsk
    tsk ist offline
    Forum Stammgast
    Registriert seit
    16.03.2010
    Ort
    Vaals, Niederlande
    Beiträge
    445

    realUrl / tt_news mehrsprachlich mit nicht-redundantem Caching

    Hallo zusammen,

    manchmal lenkt ja Arbeit doch sehr vom hehren Streben nach der besseren Lösung ab. Ich bemühe mich derzeit, nach kurzer TYPO3 Abstinenz, 4.5.x Projekte reifer für die Zukunft (4.6/4.7) zu gestalten und gleichzeitig lieb gewonnene Unschönheiten zu beseitigen. Ich erstelle fast ausschließlich mehrsprachige Websites. Zu den aufgelaufenen Problemen zählen, neben etwas angestaubten Extensions, speziell Caching Issues. Woher diese rühren, erkennt man bei gezielter Beobachtung der Entwicklung des Caches nach einem „Clear all caches“.

    Ein Beispiel (abgeschaltetes realUrl, da wird es deutlicher:sad:

    2 Sprachen: default English (L=0), Deutsch (L=1). Start Seite (9) über Shortcut der Root Page.

    Aufruf der Domain: http://mydom.tld => (über Redirect 301) => http://www.mydom.tld erzeugt 4 fast identische Cache Einträge (der vorherige Redirect erspart hier eine weitere Verdoppelung)
    Abhängig von der Zahl der Conditions (Browserweiche, Logged-In User/Group...) können dies beliebig mehr werden. Dies ist expected behaviour und kann durch etwas Nachdenken reduziert werden (brauche ich eine Weiche für „print“?) - kurz gesagt: Conditions reduzieren und/oder ausmisten.

    Was aber als Ärgernis bleibt, ist folgendes:

    Bedingt durch meinen aktuellen Language Switch auf der Seite (tt_news tauglich) setzt dieser entweder die Sprachvariable L=0 (default) oder L=1 (Deutsch). Dies führt direkt zu Duplicate Content, den es zu vermeiden gilt, sowie zu überflüssigem Caching. Richtiger wäre wohl, dass für die Default Sprache gar kein Language Parameter gesetzt würde. Aber dann bekomme ich Ärger mit tt_news 3.1 und/oder realUrl. Und tt_news 3.1 bringt zusätzlich sprachliche Probleme, die bei 3.01 bereits (manuell) rausgepatched waren (next/prev Page in Single View lokalisiert den Titel nicht mehr und sortiert gem. default Language).

    Die realUrl Probleme kann man in den Griff bekommen, wenn man mit folgender Struktur leben kann:

    Code:
    http://www.example.eu/contact/ (default sprache English) 
    http://www.example.eu/de/kontakt/ (Deutsch)
    also Sprachparameter nur bei nicht-default Sprache.

    Dies widerspräche aber meinen Absichten zur .eu Domain, sie soll gerade nicht sprachlich priorisieren, benötigt somit:

    In der Realität sind es mehr als nur 2 Sprachen. Sprachtypische Domains scheiden somit aus (auch wenn teilweise vorhanden:sad:

    Jetzt sehe ich zwei theoretische Ansätze:

    1) Die Rewrite Engine läuft sowieso schon. Wird die Domain (also ohne weitere Url Parameter) aufgerufen, so mache Redirect auf http://www.example.eu/en/ (oder gar: http://www.example.eu/en/home/, denn die Seite gehört eigentlich in den Cache). Diese Lösung hätte den Charme, TYPO3 dabei komplett raus zu halten. Ich bin mir jedoch nicht sicher, ob ich mir damit selbst ins Knie schieße. Hat da jemand Erfahrungen? Mögliche Probleme würde ich bei ssl, feeds etc. sehen.

    2) Die ganzen Nickeligkeiten mit tt_news und realUrl angehen. Mein gewünschtes Url Schema scheint bei realUrl ausschließlich mit folgender Konfiguration zu klappen:

    Code:
    'preVars' => array( 
    '0' => array( 
    'GETvar' => 'no_cache', 
    'valueMap' => array( 
    'nc' => 1, 
    ), 
    'noMatch' => 'bypass', 
    ), 
    '1' => array( 
    'GETvar' => 'L', 
    'valueMap' => array( 
    'en' => '0', 
    'de' => '1', 
    ), 
    // 'noMatch' => 'bypass', 
    'valueDefault' => 'en', 
    ), 
    ),
    Gibt es irgend eine alternative Variante für realUrl, die immer (zwingend) eine Sprachvariable in der Url führt? Macht hierfür der Bereich 'redirects_regex' oder 'redirects' in realUrl vielleicht Sinn? Ist leider nur sehr rudimentär dokumentiert. Etwas unschön ist auch die fehlende Transparenz zwischen Redirects durch realurl und direkten Redirects durch den Apachen (also vhost settings oder, für Hobbyisten, auch .htaccess). Letztere bieten natürlich gewaltige Performancevorteile gegenüber allen TYPO3-internen Mechanismen.

    Wie geht Ihr damit um?

    Viele Grüße,

    Thomas
    Geändert von tsk (14.03.2012 um 09:23 Uhr)
    Pix-Pro by TSC New Media Consulting
    Wenn etwas nicht klappt, wie es soll, so wende nie Gewalt an – nimm einfach einen größeren Hammer.

  2. #2
    tsk
    tsk ist offline
    Forum Stammgast
    Registriert seit
    16.03.2010
    Ort
    Vaals, Niederlande
    Beiträge
    445
    Sodelle. Das Thema scheint ja niemanden wirklich zu bewegen - obwohl es Euch wahrscheinlich alle betrifft.

    Um es zum Abschluss zu bringen. Alles, was oben steht, stimmt. Duplicate Content ist mit TYPO3 Bordmitteln (inkl. realUrl) und Url/Sprachschema wie genannt nicht zu vermeiden. Dies ist jedoch überhaupt nicht tragisch, denn man regelt es ausschließlich über mod_rewrite. Tut man dies richtig, so gibt es noch genau einen (in Worten EINEN) Cache record pro Seite und Sprache (dito bei News Single, ein Cache record pro Artikel/Sprache). Vorher hat man natürlich bereits alle Typolinks, die man auf der Seite nutzt, hinsichtlich Vollständigkeit und im Sinne der reinen Lehre geprüft und sich bemüht, die eine oder andere Condition in die Tonne zu hauen.

    Ein wichtiger Tipp dazu: Berücksichtigt bei (eigenen) Redirects nicht nur die Sprachvariablen, sondern auch ggf. vorkommende no-cache Seiten.

    Das Ergebnis der letzten drei Arbeitstage ist somit eine Versechsfachung der Server Performance des Entwicklungssystems, Aufwand: geschätzt 120 Zeichen.

    Hastalavista und Glückauf
    Pix-Pro by TSC New Media Consulting
    Wenn etwas nicht klappt, wie es soll, so wende nie Gewalt an – nimm einfach einen größeren Hammer.

  3. #3
    TYPO3 Forum Team Administrator Avatar von Josef F. Glatz
    Registriert seit
    24.07.2006
    Ort
    Österreich
    Beiträge
    2.496
    Das hört sich interessant an. Könntest du uns evtl. mehr Details zur mod_rewrite Anpassung geben?
    Bitte markiere Deinen Thread als Gelöst, wenn er es ist! So geht das!
    Hast Du ihn eventl. selbst gelöst? Dann lass uns an der Lösung teilhaben!


    TYPO3Blog.at - TYPO3 Videotutorials | Josef Florian Glatz

    KEINE PM'S MEHR, wenn es sich um Fragen handelt, die IN das Forum gehören!

  4. #4
    tsk
    tsk ist offline
    Forum Stammgast
    Registriert seit
    16.03.2010
    Ort
    Vaals, Niederlande
    Beiträge
    445
    Gern:

    Code:
            # Redirect to default language, if no language is set
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule !^(nc/)?(en|de)/?  http://%{HTTP_HOST}/en%{REQUEST_URI} [R=301,L]
    
            # Redirect to localized start pages
            # Rewrite all urls with set language var only
            # This solves the problem of having multiple cache entries for the start page per language (DC)
            RewriteRule ^en/?$ http://%{HTTP_HOST}/en/home/ [R=301,L]
            RewriteRule ^de/?$ http://%{HTTP_HOST}/de/home/ [R=301,L]
    Wichtig: Dies ist nicht zwangsweise Syntax für .htaccess (ich arbeite mit Apache vhost settings, um htaccess nicht zu brauchen). Der restliche Rewrite Kram bleibt wie im Standard. Die Direktiven sind bislang nur lokal getestet, aber bisher ohne besondere Auffälligkeiten (außer sauberem Caching). Betonen möchte ich auch, dass dies nur für multilanguage Sites erforderlich ist, und auch nur, wenn die default Sprache (L=0) Teil der Url sein soll (also zwingend gesetzter L Parameter).

    Problempotential: Geht nur mit aktiviertem realUrl

    Verbesserungspotential: Statt semantischen Url-Parametern (de/en) die tatsächlichen (TYPO3 internen) L-Parameter nutzen, jedoch ohne 301 (davon darf Google & Co nichts mitbekommen). Dann müsste die Kiste mit und ohne realUrl funktionieren - bei identischer realUrl Konfiguration. Mag ja mal wer ausprobieren und das Ergebnis posten.

    Für weitere Verbesserungen bin ich natürlich offen.
    Pix-Pro by TSC New Media Consulting
    Wenn etwas nicht klappt, wie es soll, so wende nie Gewalt an – nimm einfach einen größeren Hammer.

  5. #5
    tsk
    tsk ist offline
    Forum Stammgast
    Registriert seit
    16.03.2010
    Ort
    Vaals, Niederlande
    Beiträge
    445
    So schön meine ausgearbeitete Lösung auch funktioniert, sie fühlt sich falsch an. Warum?

    Sie mischt canonical und Url-parameter based rewriting und sie funktioniert, weil die Reihenfolge stimmig ist. Ich denke, wenn man sowas tut, so landet man irgendwann in der Hölle, und dies verdient.

    Die einzig wirklich brauchbare Lösung erzwingt nur den L Parameter (L=0), falls im Querystring kein L-Parameter gesetzt ist. Canonical rewriting verstehe ich ja halbwegs, aber hier geht mir die Puste aus. Es geht um diesen Teil:

    Code:
    RewriteRule !^(nc/)?(en|de)/?  http://%{HTTP_HOST}/en%{REQUEST_URI} [R=301,L]
    Um den Cache Parameter muss man sich in diesem Fall nicht bemühen (ist er im Querystring, so bleibt er dort auch). Wie bekomme ich diese Rule auf den puren L-Parameter reduziert. Bitte Rewriting Gurus vortreten.

    früstelnd,

    Thomas
    Pix-Pro by TSC New Media Consulting
    Wenn etwas nicht klappt, wie es soll, so wende nie Gewalt an – nimm einfach einen größeren Hammer.

 

 

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Facebook Kommentare

Ähnliche Themen

  1. RealURL mit CAL (Liste,Event)
    Von erazr im Forum Suchmaschinenfreundliche URLs (SEO)
    Antworten: 3
    Letzter Beitrag: 23.07.2010, 08:14
  2. RealURL config für type 9713 der chgallery + Powermail 3131
    Von rari2003 im Forum Suchmaschinenfreundliche URLs (SEO)
    Antworten: 1
    Letzter Beitrag: 20.07.2010, 10:05
  3. RealURL - Funktioniert nach Neuinstallation nicht mehr
    Von OliverH im Forum Suchmaschinenfreundliche URLs (SEO)
    Antworten: 4
    Letzter Beitrag: 02.12.2009, 20:50
  4. entweder multi domain - oder RealUrl
    Von 2ki im Forum Suchmaschinenfreundliche URLs (SEO)
    Antworten: 1
    Letzter Beitrag: 11.09.2009, 07:48
  5. RealUrl, ID-to-path mapping und Cache
    Von refalo im Forum Suchmaschinenfreundliche URLs (SEO)
    Antworten: 1
    Letzter Beitrag: 30.06.2007, 11:15

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238