Real URL (realurl): Unterschied zwischen den Versionen
(comment1, http://passionistablogs.com/soma.html soma.com, http://patriarchrecordz.com/ultram.html ultram detox, http://gaylery.com/ambien.html mixing ambien and xanax, http://outsidemusic.net/diamox.h) |
|||
| (74 dazwischenliegende Versionen von 40 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
| − | + | == Weitere Infos zu RealURL == | |
| + | [[RealURL Probleme beheben]] | ||
| + | |||
| + | == Old Stuff == | ||
| + | |||
| + | Pathcache ausschalten: http://blog.marit.ag/2007/07/24/realurl-pathcache-ausschalten/ | ||
| + | Tipps | ||
| + | Alte Simulatic Links | ||
| + | |||
| + | von außen erhalten... | ||
| + | |||
| + | RewriteRule ([0-9]+)\.([0-9]+)\.html$ http:///index.php?id=$1&type=$2 [R=301,L] | ||
| + | |||
| + | Sprich: meineDomain.de/123.html wird zu meineDomain.de/index.php?id=123 Wenn die Seiten andere IDs beinhalten dann kann man alte Seiten per Redirect umleiten (siehe htaccess) | ||
| + | Lange Pfade abkürzen | ||
| + | |||
| + | Hinweis: '''In neuen RealURL geht das auch ohne die folgende Extension''' | ||
| + | |||
| + | Manchmal hat man sehr lange Pfade wenn die Navigation in Unterordnern liegt. Mit der Extension aoe_realurlpath kann man diese Teile "cutten" | ||
| + | |||
| + | Vorgehen | ||
| + | |||
| + | * Extension installieren | ||
| + | * realurl konfiguration anpassen | ||
| + | |||
| + | 'pagePath' => array ( | ||
| + | 'type' => 'user', | ||
| + | // -> delete this | ||
| + | 'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main', | ||
| + | // -> use this | ||
| + | 'userFunc' => 'EXT:aoe_realurlpath/class.tx_aoerealurlpath_pagepath.php:&tx_aoerealurlpath_pagepath->main', | ||
| + | 'spaceCharacter' => '-', | ||
| + | 'languageGetVar' => 'L', | ||
| + | 'expireDays' => '7', | ||
| + | 'rootpage_id' => '1', | ||
| + | // -> add this | ||
| + | 'segTitleFieldList'=>'alias,tx_aoerealurlpath_overridesegment,nav_title,title,subtitle', | ||
| + | ), | ||
| + | |||
| + | Manuelles serialisieren | ||
| + | |||
| + | RealURL arbeitet mit einer serialisierten Konfiguration bis zu 10 mal schneller. Wenn man aber die Konfigurations-Datei von Hand erstellen (oder verändern will) kann man mit dem serialisierten Array nichts anfangen. In php kann man mit den Befehlen serialize und unserialize die Arrays konvertieren. | ||
| + | |||
| + | Beispiel: | ||
| + | |||
| + | $serializedConfig = serialize($TYPO3_CONF_VARS['EXTCONF']['realurl']); | ||
| + | print($serializedConfig); | ||
| + | |||
| + | Probleme lösen | ||
| + | Mal gehts, mal nicht | ||
| + | |||
| + | Beim Testen von RealURL hilft es oftmals einen anderen Browser zum testen der Seiten zu benutzen, mit dem man nicht eingeloggt ist. Das hilft um Probleme im Zusammenhang mit dem Caching zu lösen. | ||
| + | realurl_autoconf.php wird nicht erstellt | ||
| + | |||
| + | Das Problem hängt mit anderen Extensions zusammen. Ist Powermail installiert in den Extension Einstellungen von Powermail die Option für Realurl bei der installation der realurl Extension ausschalten. | ||
| + | |||
| + | Im typo3forum.net war auch die Rede von Problemen mit t3skin. Konnte ich bisher nicht nachvollziehen aber temporäres ausschalten hilft wohl auch hier. | ||
| + | weitere Probleme | ||
| + | |||
| + | * Fehlermeldung Pfad/sowieso/ not found nearest match is | ||
| + | o Problem bei der Konfigurationsdatei (Leerzeichen vorne, falsche id etc.) | ||
| + | * Stylesheets, Bilder etc. aus TypoScript Konfiguration werden nicht gefunden. | ||
| + | o BaseURL stimmt nicht config.baseURL = http://www.meineDomain.de/ | ||
| + | * Konfiguration loswerden: | ||
| + | o realurl und urltools Verweisen in der localconf auf ihr Konfigurationsfile. Alle Einträge und die Dateien können gelöscht werden wenn nicht mehr benötigt. | ||
| + | * Es werden falsche Links in der Art meineDomain.de/SeitenID generiert => siehe Typo3 - RealURL mit mehreren Domains | ||
| + | |||
| + | Quickinfo | ||
| + | Einfachere automatische Konfiguration mit neuer Version) | ||
| + | |||
| + | (Update 12/2009) Mindestens ab Version 1.7 erkennt die Autokonfiguration angelegte Domain-Records und passt die Konfiguration daraufhin an. Sprich - folgendes vorgehen. | ||
| + | |||
| + | * Wichtig: Zuerst alle Domain Records anlegen (auch für den Hauptbaum). Dies nimmt die autoconf als Basis für die Record Arrays und setzt dann auch gleich die Root IDs | ||
| + | * htaccess Datei anpassen | ||
| + | * Extensions die für realurl eine Konfiguration für realurl mitbringen vor real url installieren | ||
| + | * realurl installieren | ||
| + | * TypoScript anpassen (config.baseURL für alle Seitenbäume nicht vergessen) | ||
| + | |||
| + | In http://dmitry-dulepov.com/article/automatic-realurl-configuration-howto.html spricht Dimitry davon daß die Autokonfiguration zukünftig automatisch aktualisiert wird. Im Moment nur wenn die Datei gelöscht wird. | ||
| + | |||
| + | Wenn man manuell konfiguriert sollte man also alles nach realurl_conf.php kopieren, damit nichts ausversehen überschrieben wird. (Update Ende) | ||
| + | |||
| + | |||
| + | config{ | ||
| + | simulateStaticDocuments = 0 | ||
| + | tx_realurl_enable = 1 | ||
| + | baseURL = http://www.grauff.com/ | ||
| + | } | ||
| + | |||
| + | * First try autoconfiguration | ||
| + | * If doesen't work switch off and use manual configuration or use aeurltool (or realurlsettings) (easier to configure and contains working standard configuration) | ||
| + | * look section tipps for better configuration | ||
| + | |||
| + | Konfiguriern mit Hilfe von danp_realurlconfigurator | ||
| + | |||
| + | für die Konfoguration hilft auch die extension danp_realurlconfigurator | ||
| + | Configure Apache | ||
| + | |||
| + | RealURLs work by providing 'virtual paths' to 'virtual files'. These don't actually exist on the file-system, so you must tell Apache to let a PHP-script handle the request if it can't find the file. This way, all URLs to pages (like www.server.com/products/product1/left.html) will be 'redirected' to /index.php, which will handle the translation of the URL into GET parameters. Real files (like images, the TYPO3 backend, static html-files, etc.) will still be handled by Apache itself though. | ||
| + | |||
| + | You should put the supplied sample .htaccess file (called _.htaccess) in the root of your TYPO3-installation. | ||
| + | |||
| + | Alternatively, you could include the following lines in your httpd.conf, probably in the VirtualHost-section. Here is an example: | ||
| + | |||
| + | <VirtualHost 127.0.0.1> | ||
| + | DocumentRoot /var/www/typo3/dev/testsite-3/ | ||
| + | ServerName www.test1.intra | ||
| + | RewriteEngine On | ||
| + | RewriteRule ^/typo3$ - [L] | ||
| + | RewriteRule ^/typo3/.*$ - [L] | ||
| + | RewriteCond %{REQUEST_FILENAME} !-f | ||
| + | RewriteCond %{REQUEST_FILENAME} !-d | ||
| + | RewriteCond %{REQUEST_FILENAME} !-l | ||
| + | RewriteRule .* /index.php | ||
| + | </VirtualHost> | ||
| + | |||
| + | NOTICE: USING httpd.conf is currently known not to work since t3lib_div::getIndpEnv('TYPO3_SITE_URL') is not correct. Solution remains to be found. | ||
| + | |||
| + | If you put it into a .htaccess file it has to look slightly different, basically stripping the leading slashes (“/”): | ||
| + | |||
| + | RewriteEngine On | ||
| + | #RewriteBase /mySubfolderIfNeeded | ||
| + | RewriteRule ^/typo3$ - [L] | ||
| + | RewriteRule ^/typo3/.*$ - [L] | ||
| + | RewriteCond %{REQUEST_FILENAME} !-f | ||
| + | RewriteCond %{REQUEST_FILENAME} !-d | ||
| + | RewriteCond %{REQUEST_FILENAME} !-l | ||
| + | RewriteRule .* index.php | ||
| + | |||
| + | |||
| + | This will tell Apache that it should rewrite every URL that's not a filename, directory or symlink. It leaves everything starting with /typo3/ alone too. | ||
| + | |||
| + | Notice: For this work you need the Apache module “mod_rewrite”! | ||
| + | |||
| + | Also refer to the Appendix for extended information on mod_rewrite issues. | ||
| + | TS Config | ||
| + | |||
| + | config.simulateStaticDocuments = 0 | ||
| + | config.baseURL = http://mydomain.com/ | ||
| + | config.tx_realurl_enable = 1 | ||
| + | |||
| + | localconf.php Configuration | ||
| + | Mehrere Domains verwalten | ||
| + | |||
| + | Dies wird von autoconfig mittlerweile selbstständig gemacht. Hier aber noch ein Link für die manuelle Konfiguration: http://www.typo3-book.com/blog/index.php/2009/01/27/realurl-mit-mehreren-domains-bzw-root-id%C2%B4s-stammbaumen/ | ||
| + | |||
| + | und hier ab Typo3 Version 4.2 und RealURL 1.5 mit Konfigurationsmöglichkeiten die es erlauben GET Parameter in Domainnamen umzusetzen: | ||
| + | |||
| + | http://typo3-blog.net/tutorials/news/realurl-multilanguage-domain.html | ||
| + | Beispiel das auch mit älteren realurl Versionen funktioniert | ||
| + | |||
| + | Im ersten Teil wird in _DEFAULT eine Standard Konfiguration mit einer rootid erstellt. Am Ende wird diese nur noch für die anderen (Im Seitenbaum nachfolgenden) Domains kopiert und die rootpageid neu gesetzt | ||
| + | |||
| + | <?php | ||
| + | |||
| + | /** | ||
| + | * | ||
| + | * default realurl configuration | ||
| + | * based on realurl-configuration of news.typo3.org | ||
| + | * http://news.typo3.org/about/realurl-configuration/ | ||
| + | * | ||
| + | */ | ||
| + | |||
| + | $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'] = array ( | ||
| + | '_DEFAULT'=>array( | ||
| + | 'init' => array ( | ||
| + | 'enableCHashCache' => '1', | ||
| + | 'appendMissingSlash' => 'ifNotFile', | ||
| + | 'enableUrlDecodeCache' => '1', | ||
| + | 'enableUrlEncodeCache' => '1', | ||
| + | ), | ||
| + | 'redirects' => array ( | ||
| + | ), | ||
| + | 'preVars' => array ( | ||
| + | '0' => array ( | ||
| + | 'GETvar' => 'no_cache', | ||
| + | 'valueMap' => array ( | ||
| + | 'nc' => '1', | ||
| + | ), | ||
| + | 'noMatch' => 'bypass' | ||
| + | ), | ||
| + | '1' => array ( | ||
| + | 'GETvar' => 'L', | ||
| + | 'valueMap' => array ( | ||
| + | 'de' => '0', | ||
| + | 'en' => '1', | ||
| + | ), | ||
| + | 'noMatch' => 'bypass', | ||
| + | ), | ||
| + | '2' => array ( | ||
| + | 'GETvar' => 'lang', | ||
| + | 'valueMap' => array ( | ||
| + | 'de' => 'de', | ||
| + | 'en' => 'en', | ||
| + | ), | ||
| + | 'noMatch' => 'bypass', | ||
| + | ), | ||
| + | ), | ||
| + | 'pagePath' => array ( | ||
| + | 'type' => 'user', | ||
| + | 'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main', | ||
| + | 'spaceCharacter' => '-', | ||
| + | 'languageGetVar' => 'L', | ||
| + | 'expireDays' => '7', | ||
| + | 'rootpage_id' => '1', | ||
| + | 'firstHitPathCache'=>1, | ||
| + | ), | ||
| + | 'fixedPostVars' => array ( | ||
| + | ), | ||
| + | 'postVarSets' => array ( | ||
| + | '_DEFAULT' => array ( | ||
| + | 'archive' => array ( | ||
| + | '0' => array ( | ||
| + | 'GETvar' => 'tx_ttnews[year]', | ||
| + | ), | ||
| + | '1' => array ( | ||
| + | 'GETvar' => 'tx_ttnews[month]', | ||
| + | 'valueMap' => array ( | ||
| + | 'january' => '01', | ||
| + | 'february' => '02', | ||
| + | 'march' => '03', | ||
| + | 'april' => '04', | ||
| + | 'may' => '05', | ||
| + | 'june' => '06', | ||
| + | 'july' => '07', | ||
| + | 'august' => '08', | ||
| + | 'september' => '09', | ||
| + | 'october' => '10', | ||
| + | 'november' => '11', | ||
| + | 'december' => '12', | ||
| + | ), | ||
| + | ), | ||
| + | ), | ||
| + | 'browse' => array ( | ||
| + | '0' => array ( | ||
| + | 'GETvar' => 'tx_ttnews[pointer]', | ||
| + | ), | ||
| + | ), | ||
| + | 'select_category' => array ( | ||
| + | '0' => array ( | ||
| + | 'GETvar' => 'tx_ttnews[cat]', | ||
| + | ), | ||
| + | ), | ||
| + | 'article' => array ( | ||
| + | '0' => array ( | ||
| + | 'GETvar' => 'tx_ttnews[tt_news]', | ||
| + | 'lookUpTable' => array ( | ||
| + | 'table' => 'tt_news', | ||
| + | 'id_field' => 'uid', | ||
| + | 'alias_field' => 'title', | ||
| + | 'addWhereClause' => ' AND NOT deleted', | ||
| + | 'useUniqueCache' => '1', | ||
| + | 'useUniqueCache_conf' => array ( | ||
| + | 'strtolower' => '1', | ||
| + | 'spaceCharacter' => '-', | ||
| + | ), | ||
| + | ), | ||
| + | ), | ||
| + | '1' => array ( | ||
| + | 'GETvar' => 'tx_ttnews[swords]', | ||
| + | ), | ||
| + | ), | ||
| + | ), | ||
| + | ), | ||
| + | 'fileName' => array ( | ||
| + | // | ||
| + | // if you don't want .html-URLs set the following to "false" (e.g. 'defaultToHTMLsuffixOnPrev' => false,) | ||
| + | // then you get http://www.yourdomain.com/imprint/ instead of http://www.yourdomain.com/imprint.html | ||
| + | // | ||
| + | 'defaultToHTMLsuffixOnPrev' => true, | ||
| + | 'index' => array ( | ||
| + | 'rss.xml' => array ( | ||
| + | 'keyValues' => array ( | ||
| + | 'type' => '100', | ||
| + | ), | ||
| + | ), | ||
| + | 'rss091.xml' => array ( | ||
| + | 'keyValues' => array ( | ||
| + | 'type' => '101', | ||
| + | ), | ||
| + | ), | ||
| + | 'rdf.xml' => array ( | ||
| + | 'keyValues' => array ( | ||
| + | 'type' => '102', | ||
| + | ), | ||
| + | ), | ||
| + | 'atom.xml' => array ( | ||
| + | 'keyValues' => array ( | ||
| + | 'type' => '103', | ||
| + | ), | ||
| + | ), | ||
| + | ), | ||
| + | ), | ||
| + | ), | ||
| + | ); | ||
| + | |||
| + | $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['www.siedlevoss.de'] = $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['_DEFAULT']; | ||
| + | $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['www.siedlevoss.de']['pagePath']['rootpage_id'] = 103; | ||
| + | $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['www.vanderrolle.de'] = $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['_DEFAULT']; | ||
| + | $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['www.vanderrolle.de']['pagePath']['rootpage_id'] = 133; | ||
| + | |||
| + | ?> | ||
| + | |||
| + | Auszüge (Stand 2008) aus verschiedenen Dokus | ||
| + | |||
| + | with the variable $TYPO3_CONF_VARS['EXTCONF']['realurl'] | ||
| + | |||
| + | This is managed automatically for newer realurl versions | ||
| + | |||
| + | <?php | ||
| + | |||
| + | /** | ||
| + | * | ||
| + | * aeUrlTool default realurl configuration | ||
| + | * based on realurl-configuration of news.typo3.org | ||
| + | * http://news.typo3.org/about/realurl-configuration/ | ||
| + | * | ||
| + | */ | ||
| + | |||
| + | $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'] = array ( | ||
| + | '_DEFAULT' => array ( | ||
| + | 'init' => array ( | ||
| + | 'enableCHashCache' => '1', | ||
| + | 'appendMissingSlash' => 'ifNotFile', | ||
| + | 'enableUrlDecodeCache' => '1', | ||
| + | 'enableUrlEncodeCache' => '1', | ||
| + | ), | ||
| + | 'redirects' => array ( | ||
| + | ), | ||
| + | 'preVars' => array ( | ||
| + | '0' => array ( | ||
| + | 'GETvar' => 'no_cache', | ||
| + | 'valueMap' => array ( | ||
| + | 'nc' => '1', | ||
| + | ), | ||
| + | 'noMatch' => 'bypass' | ||
| + | ), | ||
| + | '1' => array ( | ||
| + | 'GETvar' => 'L', | ||
| + | 'valueMap' => array ( | ||
| + | 'de' => '0', | ||
| + | 'en' => '1', | ||
| + | ), | ||
| + | 'noMatch' => 'bypass', | ||
| + | ), | ||
| + | '2' => array ( | ||
| + | 'GETvar' => 'lang', | ||
| + | 'valueMap' => array ( | ||
| + | 'de' => 'de', | ||
| + | 'en' => 'en', | ||
| + | ), | ||
| + | 'noMatch' => 'bypass', | ||
| + | ), | ||
| + | ), | ||
| + | 'pagePath' => array ( | ||
| + | 'type' => 'user', | ||
| + | 'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main', | ||
| + | 'spaceCharacter' => '-', | ||
| + | 'languageGetVar' => 'L', | ||
| + | 'expireDays' => '7', | ||
| + | 'rootpage_id' => '1', | ||
| + | ), | ||
| + | 'fixedPostVars' => array ( | ||
| + | ), | ||
| + | 'postVarSets' => array ( | ||
| + | '_DEFAULT' => array ( | ||
| + | 'archive' => array ( | ||
| + | '0' => array ( | ||
| + | 'GETvar' => 'tx_ttnews[year]', | ||
| + | ), | ||
| + | '1' => array ( | ||
| + | 'GETvar' => 'tx_ttnews[month]', | ||
| + | 'valueMap' => array ( | ||
| + | 'january' => '01', | ||
| + | 'february' => '02', | ||
| + | 'march' => '03', | ||
| + | 'april' => '04', | ||
| + | 'may' => '05', | ||
| + | 'june' => '06', | ||
| + | 'july' => '07', | ||
| + | 'august' => '08', | ||
| + | 'september' => '09', | ||
| + | 'october' => '10', | ||
| + | 'november' => '11', | ||
| + | 'december' => '12', | ||
| + | ), | ||
| + | ), | ||
| + | ), | ||
| + | 'browse' => array ( | ||
| + | '0' => array ( | ||
| + | 'GETvar' => 'tx_ttnews[pointer]', | ||
| + | ), | ||
| + | ), | ||
| + | 'select_category' => array ( | ||
| + | '0' => array ( | ||
| + | 'GETvar' => 'tx_ttnews[cat]', | ||
| + | ), | ||
| + | ), | ||
| + | 'article' => array ( | ||
| + | '0' => array ( | ||
| + | 'GETvar' => 'tx_ttnews[tt_news]', | ||
| + | 'lookUpTable' => array ( | ||
| + | 'table' => 'tt_news', | ||
| + | 'id_field' => 'uid', | ||
| + | 'alias_field' => 'title', | ||
| + | 'addWhereClause' => ' AND NOT deleted', | ||
| + | 'useUniqueCache' => '1', | ||
| + | 'useUniqueCache_conf' => array ( | ||
| + | 'strtolower' => '1', | ||
| + | 'spaceCharacter' => '-', | ||
| + | ), | ||
| + | ), | ||
| + | ), | ||
| + | '1' => array ( | ||
| + | 'GETvar' => 'tx_ttnews[swords]', | ||
| + | ), | ||
| + | ), | ||
| + | ), | ||
| + | ), | ||
| + | 'fileName' => array ( | ||
| + | // | ||
| + | // if you don't want .html-URLs set the following to "false" (e.g. 'defaultToHTMLsuffixOnPrev' => false,) | ||
| + | // then you get http://www.yourdomain.com/imprint/ instead of http://www.yourdomain.com/imprint.html | ||
| + | // | ||
| + | 'defaultToHTMLsuffixOnPrev' => true, | ||
| + | 'index' => array ( | ||
| + | 'rss.xml' => array ( | ||
| + | 'keyValues' => array ( | ||
| + | 'type' => '100', | ||
| + | ), | ||
| + | ), | ||
| + | 'rss091.xml' => array ( | ||
| + | 'keyValues' => array ( | ||
| + | 'type' => '101', | ||
| + | ), | ||
| + | ), | ||
| + | 'rdf.xml' => array ( | ||
| + | 'keyValues' => array ( | ||
| + | 'type' => '102', | ||
| + | ), | ||
| + | ), | ||
| + | 'atom.xml' => array ( | ||
| + | 'keyValues' => array ( | ||
| + | 'type' => '103', | ||
| + | ), | ||
| + | ), | ||
| + | ), | ||
| + | ), | ||
| + | ), | ||
| + | |||
| + | ); | ||
| + | |||
| + | ?> | ||
| + | |||
| + | Workaround wenn Pfade verloren gehen | ||
| + | |||
| + | Sollten Sie den "Pagepath" über den Web-Menüpunkt Info->Speaking Url Management ändern, kann es Ihnen passieren, dass die Pfade in Links und Menüs nicht aktualisiert werden. | ||
| + | |||
| + | Als Workaround hilft es, den Seitencache zu löschen und dann die Seiten mit einem anderen Browser zu öffnen, bei dem man nicht als BE-User eingeloggt ist. | ||
| + | |||
| + | Tutorial hierfür (http://www.oliver-thiele.de/cms-typo3/tutorials/realurl-tutorial.html) | ||
Aktuelle Version vom 16. Dezember 2010, 09:53 Uhr
Weitere Infos zu RealURL[Bearbeiten]
Old Stuff[Bearbeiten]
Pathcache ausschalten: http://blog.marit.ag/2007/07/24/realurl-pathcache-ausschalten/ Tipps Alte Simulatic Links
von außen erhalten...
RewriteRule ([0-9]+)\.([0-9]+)\.html$ http:///index.php?id=$1&type=$2 [R=301,L]
Sprich: meineDomain.de/123.html wird zu meineDomain.de/index.php?id=123 Wenn die Seiten andere IDs beinhalten dann kann man alte Seiten per Redirect umleiten (siehe htaccess) Lange Pfade abkürzen
Hinweis: In neuen RealURL geht das auch ohne die folgende Extension
Manchmal hat man sehr lange Pfade wenn die Navigation in Unterordnern liegt. Mit der Extension aoe_realurlpath kann man diese Teile "cutten"
Vorgehen
* Extension installieren * realurl konfiguration anpassen
'pagePath' => array (
'type' => 'user',
// -> delete this
'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
// -> use this
'userFunc' => 'EXT:aoe_realurlpath/class.tx_aoerealurlpath_pagepath.php:&tx_aoerealurlpath_pagepath->main', 'spaceCharacter' => '-', 'languageGetVar' => 'L', 'expireDays' => '7', 'rootpage_id' => '1',
// -> add this
'segTitleFieldList'=>'alias,tx_aoerealurlpath_overridesegment,nav_title,title,subtitle',
),
Manuelles serialisieren
RealURL arbeitet mit einer serialisierten Konfiguration bis zu 10 mal schneller. Wenn man aber die Konfigurations-Datei von Hand erstellen (oder verändern will) kann man mit dem serialisierten Array nichts anfangen. In php kann man mit den Befehlen serialize und unserialize die Arrays konvertieren.
Beispiel:
$serializedConfig = serialize($TYPO3_CONF_VARS['EXTCONF']['realurl']); print($serializedConfig);
Probleme lösen Mal gehts, mal nicht
Beim Testen von RealURL hilft es oftmals einen anderen Browser zum testen der Seiten zu benutzen, mit dem man nicht eingeloggt ist. Das hilft um Probleme im Zusammenhang mit dem Caching zu lösen. realurl_autoconf.php wird nicht erstellt
Das Problem hängt mit anderen Extensions zusammen. Ist Powermail installiert in den Extension Einstellungen von Powermail die Option für Realurl bei der installation der realurl Extension ausschalten.
Im typo3forum.net war auch die Rede von Problemen mit t3skin. Konnte ich bisher nicht nachvollziehen aber temporäres ausschalten hilft wohl auch hier. weitere Probleme
* Fehlermeldung Pfad/sowieso/ not found nearest match is
o Problem bei der Konfigurationsdatei (Leerzeichen vorne, falsche id etc.)
* Stylesheets, Bilder etc. aus TypoScript Konfiguration werden nicht gefunden.
o BaseURL stimmt nicht config.baseURL = http://www.meineDomain.de/
* Konfiguration loswerden:
o realurl und urltools Verweisen in der localconf auf ihr Konfigurationsfile. Alle Einträge und die Dateien können gelöscht werden wenn nicht mehr benötigt.
* Es werden falsche Links in der Art meineDomain.de/SeitenID generiert => siehe Typo3 - RealURL mit mehreren Domains
Quickinfo Einfachere automatische Konfiguration mit neuer Version)
(Update 12/2009) Mindestens ab Version 1.7 erkennt die Autokonfiguration angelegte Domain-Records und passt die Konfiguration daraufhin an. Sprich - folgendes vorgehen.
* Wichtig: Zuerst alle Domain Records anlegen (auch für den Hauptbaum). Dies nimmt die autoconf als Basis für die Record Arrays und setzt dann auch gleich die Root IDs * htaccess Datei anpassen * Extensions die für realurl eine Konfiguration für realurl mitbringen vor real url installieren * realurl installieren * TypoScript anpassen (config.baseURL für alle Seitenbäume nicht vergessen)
In http://dmitry-dulepov.com/article/automatic-realurl-configuration-howto.html spricht Dimitry davon daß die Autokonfiguration zukünftig automatisch aktualisiert wird. Im Moment nur wenn die Datei gelöscht wird.
Wenn man manuell konfiguriert sollte man also alles nach realurl_conf.php kopieren, damit nichts ausversehen überschrieben wird. (Update Ende)
config{
simulateStaticDocuments = 0 tx_realurl_enable = 1 baseURL = http://www.grauff.com/
}
* First try autoconfiguration * If doesen't work switch off and use manual configuration or use aeurltool (or realurlsettings) (easier to configure and contains working standard configuration) * look section tipps for better configuration
Konfiguriern mit Hilfe von danp_realurlconfigurator
für die Konfoguration hilft auch die extension danp_realurlconfigurator Configure Apache
RealURLs work by providing 'virtual paths' to 'virtual files'. These don't actually exist on the file-system, so you must tell Apache to let a PHP-script handle the request if it can't find the file. This way, all URLs to pages (like www.server.com/products/product1/left.html) will be 'redirected' to /index.php, which will handle the translation of the URL into GET parameters. Real files (like images, the TYPO3 backend, static html-files, etc.) will still be handled by Apache itself though.
You should put the supplied sample .htaccess file (called _.htaccess) in the root of your TYPO3-installation.
Alternatively, you could include the following lines in your httpd.conf, probably in the VirtualHost-section. Here is an example:
<VirtualHost 127.0.0.1> DocumentRoot /var/www/typo3/dev/testsite-3/ ServerName www.test1.intra RewriteEngine On RewriteRule ^/typo3$ - [L] RewriteRule ^/typo3/.*$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-l RewriteRule .* /index.php </VirtualHost>
NOTICE: USING httpd.conf is currently known not to work since t3lib_div::getIndpEnv('TYPO3_SITE_URL') is not correct. Solution remains to be found.
If you put it into a .htaccess file it has to look slightly different, basically stripping the leading slashes (“/”):
RewriteEngine On
- RewriteBase /mySubfolderIfNeeded
RewriteRule ^/typo3$ - [L] RewriteRule ^/typo3/.*$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-l RewriteRule .* index.php
This will tell Apache that it should rewrite every URL that's not a filename, directory or symlink. It leaves everything starting with /typo3/ alone too.
Notice: For this work you need the Apache module “mod_rewrite”!
Also refer to the Appendix for extended information on mod_rewrite issues. TS Config
config.simulateStaticDocuments = 0 config.baseURL = http://mydomain.com/ config.tx_realurl_enable = 1
localconf.php Configuration Mehrere Domains verwalten
Dies wird von autoconfig mittlerweile selbstständig gemacht. Hier aber noch ein Link für die manuelle Konfiguration: http://www.typo3-book.com/blog/index.php/2009/01/27/realurl-mit-mehreren-domains-bzw-root-id%C2%B4s-stammbaumen/
und hier ab Typo3 Version 4.2 und RealURL 1.5 mit Konfigurationsmöglichkeiten die es erlauben GET Parameter in Domainnamen umzusetzen:
http://typo3-blog.net/tutorials/news/realurl-multilanguage-domain.html Beispiel das auch mit älteren realurl Versionen funktioniert
Im ersten Teil wird in _DEFAULT eine Standard Konfiguration mit einer rootid erstellt. Am Ende wird diese nur noch für die anderen (Im Seitenbaum nachfolgenden) Domains kopiert und die rootpageid neu gesetzt
<?php
/**
* * default realurl configuration * based on realurl-configuration of news.typo3.org * http://news.typo3.org/about/realurl-configuration/ * */
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'] = array (
'_DEFAULT'=>array(
'init' => array (
'enableCHashCache' => '1',
'appendMissingSlash' => 'ifNotFile',
'enableUrlDecodeCache' => '1',
'enableUrlEncodeCache' => '1',
),
'redirects' => array (
),
'preVars' => array (
'0' => array (
'GETvar' => 'no_cache',
'valueMap' => array (
'nc' => '1',
),
'noMatch' => 'bypass'
),
'1' => array (
'GETvar' => 'L',
'valueMap' => array (
'de' => '0',
'en' => '1',
),
'noMatch' => 'bypass',
),
'2' => array (
'GETvar' => 'lang',
'valueMap' => array (
'de' => 'de',
'en' => 'en',
),
'noMatch' => 'bypass',
),
),
'pagePath' => array (
'type' => 'user',
'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
'spaceCharacter' => '-',
'languageGetVar' => 'L',
'expireDays' => '7',
'rootpage_id' => '1',
'firstHitPathCache'=>1,
),
'fixedPostVars' => array (
),
'postVarSets' => array (
'_DEFAULT' => array (
'archive' => array (
'0' => array (
'GETvar' => 'tx_ttnews[year]',
),
'1' => array (
'GETvar' => 'tx_ttnews[month]',
'valueMap' => array (
'january' => '01',
'february' => '02',
'march' => '03',
'april' => '04',
'may' => '05',
'june' => '06',
'july' => '07',
'august' => '08',
'september' => '09',
'october' => '10',
'november' => '11',
'december' => '12',
),
),
),
'browse' => array (
'0' => array (
'GETvar' => 'tx_ttnews[pointer]',
),
),
'select_category' => array (
'0' => array (
'GETvar' => 'tx_ttnews[cat]',
),
),
'article' => array (
'0' => array (
'GETvar' => 'tx_ttnews[tt_news]',
'lookUpTable' => array (
'table' => 'tt_news',
'id_field' => 'uid',
'alias_field' => 'title',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => '1',
'useUniqueCache_conf' => array (
'strtolower' => '1',
'spaceCharacter' => '-',
),
),
),
'1' => array (
'GETvar' => 'tx_ttnews[swords]',
),
),
),
),
'fileName' => array (
// // if you don't want .html-URLs set the following to "false" (e.g. 'defaultToHTMLsuffixOnPrev' => false,) // then you get http://www.yourdomain.com/imprint/ instead of http://www.yourdomain.com/imprint.html //
'defaultToHTMLsuffixOnPrev' => true,
'index' => array (
'rss.xml' => array (
'keyValues' => array (
'type' => '100',
),
),
'rss091.xml' => array (
'keyValues' => array (
'type' => '101',
),
),
'rdf.xml' => array (
'keyValues' => array (
'type' => '102',
),
),
'atom.xml' => array (
'keyValues' => array (
'type' => '103',
),
),
),
),
),
);
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['www.siedlevoss.de'] = $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['_DEFAULT']; $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['www.siedlevoss.de']['pagePath']['rootpage_id'] = 103; $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['www.vanderrolle.de'] = $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['_DEFAULT']; $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['www.vanderrolle.de']['pagePath']['rootpage_id'] = 133;
?>
Auszüge (Stand 2008) aus verschiedenen Dokus
with the variable $TYPO3_CONF_VARS['EXTCONF']['realurl']
This is managed automatically for newer realurl versions
<?php
/**
* * aeUrlTool default realurl configuration * based on realurl-configuration of news.typo3.org * http://news.typo3.org/about/realurl-configuration/ * */
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'] = array (
'_DEFAULT' => array (
'init' => array (
'enableCHashCache' => '1',
'appendMissingSlash' => 'ifNotFile',
'enableUrlDecodeCache' => '1',
'enableUrlEncodeCache' => '1',
),
'redirects' => array (
),
'preVars' => array (
'0' => array (
'GETvar' => 'no_cache',
'valueMap' => array (
'nc' => '1',
),
'noMatch' => 'bypass'
),
'1' => array (
'GETvar' => 'L',
'valueMap' => array (
'de' => '0',
'en' => '1',
),
'noMatch' => 'bypass',
),
'2' => array (
'GETvar' => 'lang',
'valueMap' => array (
'de' => 'de',
'en' => 'en',
),
'noMatch' => 'bypass',
),
),
'pagePath' => array (
'type' => 'user',
'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
'spaceCharacter' => '-',
'languageGetVar' => 'L',
'expireDays' => '7',
'rootpage_id' => '1',
),
'fixedPostVars' => array (
),
'postVarSets' => array (
'_DEFAULT' => array (
'archive' => array (
'0' => array (
'GETvar' => 'tx_ttnews[year]',
),
'1' => array (
'GETvar' => 'tx_ttnews[month]',
'valueMap' => array (
'january' => '01',
'february' => '02',
'march' => '03',
'april' => '04',
'may' => '05',
'june' => '06',
'july' => '07',
'august' => '08',
'september' => '09',
'october' => '10',
'november' => '11',
'december' => '12',
),
),
),
'browse' => array (
'0' => array (
'GETvar' => 'tx_ttnews[pointer]',
),
),
'select_category' => array (
'0' => array (
'GETvar' => 'tx_ttnews[cat]',
),
),
'article' => array (
'0' => array (
'GETvar' => 'tx_ttnews[tt_news]',
'lookUpTable' => array (
'table' => 'tt_news',
'id_field' => 'uid',
'alias_field' => 'title',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => '1',
'useUniqueCache_conf' => array (
'strtolower' => '1',
'spaceCharacter' => '-',
),
),
),
'1' => array (
'GETvar' => 'tx_ttnews[swords]',
),
),
),
),
'fileName' => array (
// // if you don't want .html-URLs set the following to "false" (e.g. 'defaultToHTMLsuffixOnPrev' => false,) // then you get http://www.yourdomain.com/imprint/ instead of http://www.yourdomain.com/imprint.html //
'defaultToHTMLsuffixOnPrev' => true,
'index' => array (
'rss.xml' => array (
'keyValues' => array (
'type' => '100',
),
),
'rss091.xml' => array (
'keyValues' => array (
'type' => '101',
),
),
'rdf.xml' => array (
'keyValues' => array (
'type' => '102',
),
),
'atom.xml' => array (
'keyValues' => array (
'type' => '103',
),
),
),
),
),
);
?>
Workaround wenn Pfade verloren gehen
Sollten Sie den "Pagepath" über den Web-Menüpunkt Info->Speaking Url Management ändern, kann es Ihnen passieren, dass die Pfade in Links und Menüs nicht aktualisiert werden.
Als Workaround hilft es, den Seitencache zu löschen und dann die Seiten mit einem anderen Browser zu öffnen, bei dem man nicht als BE-User eingeloggt ist.
Tutorial hierfür (http://www.oliver-thiele.de/cms-typo3/tutorials/realurl-tutorial.html)