TYPO3 mit RealUrl

Es gibt im Web viele Anleitungen wie man am besten RealUrl bei
TYPO3 verwendet, bei mir jedoch hat damals von den 10 tutorials
keine funktioniert, und es gab immer viele Fragen danach.

Also möchte ich euch vorstellen wie ich es gemacht habe, und
wie ihr es auch schafft.

RealUrl macht es möglich eure Url´s den Seiten automatisch
anzupassen.

www.domaine.at/index.php


Wird automatisch 


www.domaine.at/seitenbaum/title.html

Was natürlich für Google (SEO) ein muss ist.
Dazu kommt noch force realUrl, sollte eine
alte index="XX aufgerufen werden wird diese
automatisch weitergeleitet an die richtige .html
Datei!

Und los gehts!


Als erstes Installiert Ihr RealUrl vom Extionsion Manager,

Erweiterungen - > Erweiterungen Importieren und nach

RealUrl:

Ist die Extension Installiert, lehrt ihr den Cache.

Mit folgenden Code wird simulateStaticDocuments deakt-
viert, und der prefix erlaubt auch Ankerpunkte auf eurer
website zu benützen.

Das einzige was Ihr ändern müsst, ist eure domaine richtig
reinzuschreiben.

Template -> Rootpage auswählen -> Setup
Dort tragen wir diesen Code ein:

#### REAL-URL ####
config.simulateStaticDocuments = 0
config.baseURL = http://www.domaine.de/
config.tx_realurl_enable = 1
#### REAL-URL ENDE####

Im Ordner typo3conf/ gibt es nun eine Datei die
localconf.php heißt, dies ladet Ihr euch runter
und setzt diesen Code vor den php end tag (?>)

localconf.php code +
$TYPO3_CONF_VARS['FE']['addRootLineFields'].= ',tx_realurl_pathsegment';
$TYPO3_CONF_VARS['EXTCONF']['realurl'] = array(
    '_DEFAULT' => array(
        'init' => array(
            'enableCHashCache' => 1,
            'appendMissingSlash' => 'ifNotFile',
            'enableUrlDecodeCache' => 1,
            'enableUrlEncodeCache' => 1,
            'postVarSet_failureMode' => '',
        ),
        'redirects' => array(),
        'preVars' => array(
            array(
                'GETvar' => 'no_cache',
                    'valueMap' => array(
                        'nc' => 1,
                    ),
                    'noMatch' => 'bypass',
                ),
                array(
                    'GETvar' => 'L',
                    'valueMap' => array(
                        # 'de' => '0',
                        'en' => '1',
                    ),
                    'valueDefault' => 'de',
                    '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(
                    // news archive parameters
                    'archive' => array(
                        array(
                            'GETvar' => 'tx_ttnews[year]' ,
                        ),
                        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',
                        )
                    ),
                ),
                // news pagebrowser
                'browse' => array(
                    array(
                        'GETvar' => 'tx_ttnews[pointer]',
                    ),
                ),
                // news categories
                'select_category' => array (
                    array(
                        'GETvar' => 'tx_ttnews[cat]',
                    ),
                ),
                // news articles anMd searchwords
                'article' => array(
                    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' => '-',
                            ),
                        ),
                    ),
                    array(
                        'GETvar' => 'tx_ttnews[backPid]',
                    ),
                    array(
                        'GETvar' => 'tx_ttnews[swords]',
                    ),
                ),
            ),
        ),
        // configure filenames for different pagetypes
        'fileName' => array(
            'defaultToHTMLsuffixOnPrev' => 1,
            'index' => array(
                'print.html' => array(
                    'keyValues' => array(
                        'type' => 98,
                    ),
                ),
                '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,
                    ),
                ),
            ),
        ),
    ),
);

Diesen Code hängt Ihr nun an die localconf.php an, zur Sicherheit
hängt Ihr an die bestehende config einen unterstrich (localconf.php_)
z.B. (falls etwas schief geht habt Ihr die original Datei noch)

Nun ladet Ihr eure Modifizierte Datei Hoch, und lehrt wieder
den Cache, anschließend aktualiesiert Ihr mal euer Backend.

Step IV)

Nun müsst ihr eure .htaccess noch abändern, auf euren Server
muss mod_rewrite aktiviert sein. Sollte das nicht der Fall sein
kontaktiert euren Provider! (Solltet Ihr einen anderen Pfad verwenden müsst ihr das entsprechend ändern! RewriteBase/meine/installation z.B.)

.htaccess

RewriteEngine On
RewriteBase /
RewriteRule ^(typo3|typo3temp|typo3conf|t3lib|tslib|fileadmin|uploads|showpic\.php)/ - [L]
RewriteRule ^typo3$ typo3/index_re.php [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule .* /index.php [L]

 
Das wars!

Nun sollte alles Funktionieren.

Anschließend gibts aber noch 2 Tipps von mir...


Verwendet auch die Extension force RealUrl, das
müsst Ihr nur Installieren und hat den Sinn das eure
Website nicht 2x indexiert wird.

Sollte ein alter Link im Web vorhanden sein mit
einer index=XX endung, wird diese automatisch
umgeändert!


Der einzige nachteil an der geschichte ist, wenn Ihr
Extensions verwendet die Caching deaktieveren funkt-
ioniert die Website als eingeloggter User nicht 100%.

Klickt Ihr z.B. vom Backend auf "Seite Anzeigen" wird
ein "nc" (no caching) in eure url eingefügt. Ein normaler
user sollte das Problem nicht bekommen.

Bei mir war es z.B. feeditadvanced (habe ich danach dei-
installiert)

Ich wünsche euch Viel erfolg, und hoffe es hat geholfen.

Solltet ihr Fehlermeldungen bekommen, oder eine Error
meldung überprüft ob realUrl im TS wie oben beschrieben
eingefügt wurde, auch aber mod_rewrite aktiviert auf
euren Server.

Wichtig ist auch die .htaccess Datei!

Hier noch ein wirklich kleines Video, wie es aussieht wenn alles
fertig ist, Ihr könnt hier auch sehen welche Dateien verändert
werden.

Ein Komplettes Video wie realUrl von Anfang installiert wird
folgt vielleicht, wenn die Nachfrage danach da ist.

Update

Nach dem Versuch realUrl auf einer 4.5.2 TYPO3 version zu
realisieren bin ich auf ein paar probleme gestoßen.

Entweder lag es an einer erneuerung durch die Extension,
oder ein Fehler hat sich anderweitig eingeschlichen.

Ich denke aber eher das der Fehler in der .htaccess Datei liegt, bin aber bist Dato noch nicht dazu gekommen diese wirklich gründlich zu durchsuchen.

/EDIT/ Die Extension forcerealurls ist nicht mehr im repository.

Meine Anleitung zu realUrl war auf TYPO3 4.5.0!


Infos folgen...

Update v2

Bei neueren realUrl Versionen ist es möglich eine Autoconf Datei zu erstellen oder man erstellt eine Datei im typo3conf Ordner "realurl_conf.php. Sollte man diese Datei nehmen wollen kann man meinen code auch verwenden. Jedoch muss der gesamte Code von einen PHP Tag umschlossen werden.

<?php

?>

Ich habe Ihnen viel Arbeit und Zeit gespart mit einer Anleitung die Sie bei mir gefunden haben? Sie können sich revanchieren mit einer kleiner Kaffeekasse z.B. Ganz rechts finden Sie den offiellen Button von paypal