Zum Inhalt springen

realurl Problem

Erstellt am 14. Dezember 2009 · 10 Antworten · letzte Antwort am 27. Dezember 2009

Tags: Frage

rbing ·

Hi!

Mein Problem ist, dass realurl scheinbar meinen PageTree falsch interpretiert und eine Ebene überspringt.

Vielleicht sage ich gerade noch, was mein Ziel ist. Ich habe die Domain http://www.beispiel.de/~xyz und möchte nun darunter verschiedene Seiten bauen und diese dann mittels http://www.beispiel.de/~xyz/meineseite1/, http://www.beispiel.de/~xyz/meineseite2/, usw. erreichen. weiterhin möchte ich mit http://www.beispiel.de/~xyz auf eine von mir bestimmte seite weitergeleitet werden (z.B. meineseite1)
Dazu wollte ich realurl nutzen.

Folgenden Seitenbaum habe ich:
rootSeite (Shortcut auf erste Unterseite)
- meineseite1 (Shortcut auf erste Unterseite)
o ...
- meineseite2 (Shortcut auf erste Unterseite)
o ...

rootSeite enthält das template mit folgender Definition

config.simulateStaticDocuments = 0
config.baseURL = http://www.beispiel.de/~xyz
config.tx_realurl_enable = 1
config.prefixLocalAnchors = all

in meiner localconf.php ist realurl wie folgt konfiguriert

$TYPO3_CONF_VARS['EXTCONF']['realurl'] = array (
  '_DEFAULT' => array (
    'init' => array(
      'enableCHashCache' => 1,
      'appendMissingSlash' => 'ifNotFile',
      'enableUrlDecodeCache' => 1,
      'enableUrlEncodeCache' => 1,
    ),
    'pagePath' => array (
      'type' => 'user',
      'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
      'spaceCharacter' => '_',
      'expireDays' => '3',
      'dontResolveShortcuts' => 1,
    ),
  ),
);
$TYPO3_CONF_VARS['EXTCONF'] ['realurl'] ['http://www.beispiel.de/~xyz'] = $TYPO3_CONF_VARS['EXTCONF'] ['realurl'] ['_DEFAULT'];
$TYPO3_CONF_VARS['EXTCONF'] ['realurl'] ['http://www.beispiel.de/~xyz'] ['pagePath'] ['rootpage_id'] = '24';

das Problem ist, das die Ebene "meineseite1" und "meineseite2" nicht von realurl berücksichtigt wird. Möchte ich also von der Startseite aus navigieren bekomme ich immer 404-Fehler weil die url http://www.beispiel.de/~xyz/kontakt/ statt http://www.beispiel.de/~xyz/meineseite1/kontakt/ lautet.

Kann mir jemand bei meinem Problem weiterhelfen?

vixe ·

Hallo,

das Problem ist, dass du in der RealUrl - Config "dontResolveShortcuts' => 1" gesetzt hast und da du ja die entsprechenden Einstiegsseiten als Shortcuts definiert hast, werden diese von RealUrl auch nicht aufgelöst.

Gruß

rbing ·

Hi,

danke für die Antwort.
Leider klappt es auch nicht, wenn ich dontResolveShortcuts auf 0 setze.

Nutze übrigens Typo3 4.3 und realurl 1.7.0
Enable automatic configuration ist aus, ansonsten ist realurl standardmäßig.
simulatestatic ist nicht aktiv

hab jetzt noch einmal eine andere Konfiguration getestet. leider mit dem gleichen Ergebnis wie vorher

$TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/class.t3lib_tstemplate.php']['linkData-PostProc'][] = 'EXT:realurl/class.tx_realurl.php:&tx_realurl->encodeSpURL';
$TYPO3_CONF_VARS['SC_OPTIONS']['tslib/class.tslib_fe.php']['checkAlternativeIdMethods-PostProc'][] = 'EXT:realurl/class.tx_realurl.php:&tx_realurl->decodeSpURL';

$TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['clearAllCache_additionalTables']['tx_realurl_urldecodecache'] = 'tx_realurl_urldecodecache';
$TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['clearAllCache_additionalTables']['tx_realurl_urlencodecache'] = 'tx_realurl_urlencodecache';

$TYPO3_CONF_VARS['FE']['addRootLineFields'].= ',tx_realurl_pathsegment';

$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array(
    'init' => array(
        'enableCHashCache' => 1
    ),
    'preVars' => array(
        array(
            'GETvar' => 'no_cache',
            'valueMap' => array(
                'no_cache' => 1,
            ),
            'noMatch' => 'bypass',
        ),
    array(
        'GETvar' => 'L',
        'valueMap' => array(
            'no' => '1',
        ),
        'noMatch' => 'bypass',
        ),
    ),
    'fileName' => array (
        'index' => array(
            'backend.php' => array(
                'keyValues' => array (
                    'type' => 100,
                )
            ),
            'print' => array(                         
                'keyValues' => array(
                    'type' => 98,
                )
            ),
        ),
    ),
    'postVarSets' => array(
        '_DEFAULT' => array (
            'article' => array(
                array(
                    'GETvar' => 'tx_ttnews[tt_news]',
                ),
                array(
                    'GETvar' => 'tx_ttnews[backPid]',
                ),
            ),
            'category' => array(
                array(
                    'GETvar' => 'tx_ttnews[cat]',
                ),
            ),
            'neste' => array(
                array(
                    'GETvar' => 'tx_ttnews[pointer]',
                ),
            ),
        ),
    ),
    'pagePath' => array(
        'type' => 'user',
        'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
        'spaceCharacter' => '-',
        'languageGetVar' => 'L',
        'expireDays' => 3
    ),
);

vielleicht ist meine .htaccess auch noch von interessee.

RewriteEngine On
RewriteRule ^typo3$ - [L]
RewriteRule ^typo3/.*$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule .* index.php
WhiteShadow ·

Hi habe auch Shortcuts und bei mir funktioniert es so wie ich es möchte. Probier doch mal bitte diese Konfiguration:

$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array(
        'init' => array(
            'enableCHashCache' => 1,
            'appendMissingSlash' => 'ifNotFile',
            'enableUrlDecodeCache' => 1,
            'enableUrlEncodeCache' => 1,
            'respectSimulateStaticURLs' => 0,
           // 'postVarSet_failureMode'=>'redirect_goodUpperDir',
        ),
    'redirects_regex' => array (
    
    ),
    'preVars' => array(
                        array(
                                'GETvar' => 'no_cache',
                                'valueMap' => array(
                                    'no_cache' => 1,
                                ),
                                'noMatch' => 'bypass',
                        ),
                         array(
                             'GETvar' => 'L',
                             'valueMap' => array(
                                                'en' => '1',
                                                
                                        ),
                                '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,
        ),


      '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 and 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[swords]',
                        ),
                    ),
                ),             
            ),

      'fileName' => array(
            'defaultToHTMLsuffixOnPrev'=>1,
            '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,
                    ),
                ),
            ),
        ),
 );
WhiteShadow ·

Mh... o.O

Also wenn ich RealUrl installiere brauche ich immer nur ca. 5 Minuten. Mache das so

- RealURL installieren
- danp_realurlconfigurator installieren und anwenden
- folgendes im TS nicht vergessen:

config.simulateStaticDocuments = 0
config.baseURL = http://www.domain.de/ (letzten Slash nicht vergessen!!)
config.tx_realurl_enable = 1
config.prefixLocalAnchors = all

- _.htaccess in .htaccess umbenennen

und hatte noch nie Probleme gehabt. Bei mir funktioniert das auch so wie du es haben möchtest.

rbing ·

also ich hab jetzt schon sämtliche Konstellationen und Konfigurationen getestet und nichts hat geholfen. kann es denn evtl. an der Tilde ~ in der Url liegen? Bei Typo3 4.2.10 gabs da nämlich einen Bug.

dr.​sven ·

Kann mir mal jemand erklären, warum man Webseiten überhaupt mit dieser Tilde (~) ausstatten muss, wenn es gar nicht nötig ist?

Es hat den Ursprung bei UNIX-BS und deutet auf das Homeverzeichnis eines Users. Es gab/gibt verschiedene RFCs das Ding abzuschaffen/kodieren zu lassen, etc.

Gründe sind Unlesbarkeit, Verwechslung usw.

Was für'n Freak muss man sein, in Typo-Seiten unix-Home-User-Verzeichnisse simulieren zu wollen? #angry#

rbing ·

ich konnte mittlerweile ein Teil des Problems lösen.
Über Info -> Speaking Url Management -> ID-to-path mapping konnte ich herausfinden, dass verschiedene Seite als rootpage erkannt wurden. Dies ist nun gefixt und zumindest die Verlinkungen stimmen. Allerdings bekomme ich nach wie vor 404-Fehler, wenn ich durch die Seiten navigieren möchte, oder eine ander Url als die Base-Url im Browser eingebe.
Woran könnte das liegen? (mod_rewrite ist laut Admin aktiv)

Zu der Tilde-Geschichte: In meinem Fall zeigt die Url tatsächlich auf ein Homeverzeichnis eines Users. Bin letztlich nicht der Einzige User auf dem Server (ist kein kommerzieller Server) 😉 Leider kann ich an dem Pfad auch nichts ändern und muss somit damit leben.

rbing ·

Hi,

nach ein paar Tagen Pause sitze ich wieder mit neuem Tatendrang an der Sache. Leider funktioniert es immernoch nicht.

den Hinweis von WhiteShadow habe ich natürlich beachtet. Leider ohne erfolgreiches Ergebnis.