RealURL [Gelöst]


  • 0 x
    11. 08. 2007, 16:54

    Hallo zusammen,

    hier eine kleine Anleitung, wie ich RealURL für mich zum Laufen gebracht habe.

    Nach der Installation (und nach dem Einstellen des Templates und der .htaccess) hatte ich einige Probleme, deren Lösung ich ausführlicher schildere.

    Ein Problem war, dass ich statt Unterseiten nur einen [b]Fehler 404[/b] angezeigt bekam.
    Außerdem: [b]Firefox verlinkte Dateien[/b] (Stylesheets, Bilder usw.) [b]nicht richtig[/b]: Die Links verwiesen, wenn man im Seitenbaum in einem Unterordner war, in diese Unterordner.

    [b]Zur Lösung:[/b]
    Funktioniert mit den aktuellen Versionen Typo3 4.1.2 und RealURL 1.1.4.

    Meine [b].htaccess[/b]:
    [TS]RewriteEngine On
    Options +FollowSymLinks

    RewriteBase /

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

    RewriteRule ^(typo3|banner|typo3temp|typo3conf|t3lib|tslib|fileadmin|uploads|showpic\.php)/ - [L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-l

    RewriteRule (\.html|/)$ index.php

    #RewriteRule .* index.php
    [/TS]
    [b]Beachte[/b]: [b]RewriteBase[/b] muss (wenn Typo3 direkt im Root-Ordner installiert ist) wie oben zu sehen eingetragen werden!

    Auszug aus meinem [b]Typoscript[/b] (im Template):
    [TS]# RealURL aktivieren
    config.simulateStaticDocuments = 0
    config.baseURL = http://www.seite.de/
    config.tx_realurl_enable = 1
    config.prefixLocalAnchors = all[/TS]

    [b]Beachte hier[/b]: bei [b]config.baseURL[/b] muss auf jeden Fall auch das [b]http://[/b] mit angegeben werden, sonst erzeugt der Firefox (Version 2.0.0.6) Links, die in den aktuellen Ordner verweisen, anstatt den ausgegebenen base-Tag zu verwenden.
    Auch darf der [b]Slash am Ende[/b] nicht fehlen, sonst findet der Internet Explorer die Seiten nicht und gibt den entsprechenden Fehler 404 aus.

    Die [b]ext_localconf.php[/b] (im Ordner typo3conf/ext/realurl/) habe ich mit folgendem Code bestückt.

    1. <?php
    2. $TYPO3_CONF_VARS['SC_OPTIONS'] ['t3lib/class.t3lib_tstemplate.php'] ['linkData-PostProc'] []
    3. = 'EXT:realurl/class.tx_realurl.php:&tx_realurl->encodeSpURL';
    4. $TYPO3_CONF_VARS['SC_OPTIONS'] ['tslib/class.tslib_fe.php'] ['checkAlternativeIdMethods-PostProc'] []
    5. = 'EXT:realurl/class.tx_realurl.php:&tx_realurl->decodeSpURL';
    6. $TYPO3_CONF_VARS['SC_OPTIONS'] ['t3lib/class.t3lib_tcemain.php'] ['clearAllCache_additionalTables'] ['tx_realurl_urldecodecache']
    7. = 'tx_realurl_urldecodecache';
    8. $TYPO3_CONF_VARS['SC_OPTIONS'] ['t3lib/class.t3lib_tcemain.php'] ['clearAllCache_additionalTables'] ['tx_realurl_urlencodecache']
    9. = 'tx_realurl_urlencodecache';
    10. $TYPO3_CONF_VARS['FE'] ['addRootLineFields'] .=
    11. ',tx_realurl_pathsegment,alias,nav_title,title';
    12.  
    13. $TYPO3_CONF_VARS['EXTCONF'] ['realurl'] ['_DEFAULT'] = array(
    14.  
    15. 'init' => array(
    16. 'enableCHashCache' => 1,
    17. 'appendMissingSlash' => 'ifNotFile',
    18. 'enableUrlDecodeCache' => 1,
    19. 'enableUrlEncodeHash' => 1,
    20. // 'postVarSet_failureMode' => 'redirect_goodUpperDir',
    21. ),
    22.  
    23. 'redirects' => array(
    24. ),
    25. /* 'rewrite' => array(
    26. ), */
    27.  
    28. 'preVars' => array(
    29. /* array(
    30. 'GETvar' => 'no_cache',
    31. 'valueMap' => array(
    32. 'nc' => 1,
    33. ),
    34. 'noMatch' => 'bypass',
    35. ), */
    36. /*
    37. array(
    38. 'GETvar' => 'L',
    39. 'valueMap' => array(
    40. 'de' => '0',
    41. 'en' => '1',
    42. ),
    43. 'valueDefault' => 'de',
    44. ),
    45. */
    46. ),
    47.  
    48. 'pagePath' => array(
    49. 'type' => 'user',
    50. 'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
    51. 'spaceCharacter' => '-',
    52. 'languageGetVar' => 'L',
    53. // 'firstHitPathCache' => 1,
    54. 'expireDays' => 3,
    55. // ------------> hier unbedingt die id der Rootseite anpassen!!! <------------
    56. 'rootpage_id' => '1'
    57. ),
    58.  
    59. 'fileName' => array (
    60. 'defaultToHTMLsuffixOnPrev' => 1,
    61. 'index' => array(
    62. /*'index.html' => array(*/
    63. 'keyValues' => array (
    64. /*'type' => 1,*/
    65. ),
    66. /*),*/
    67. ),
    68. ),
    69.  
    70. 'fixedPostVarSets' => array(
    71. ),
    72.  
    73. 'postVarSets' => array(
    74. ),
    75. );
    76. ?>

    [b]Beachte[/b]: Die id zur Rootseite muss entsprechend der jeweiligen Installation angepasst werden.

    [b]Nach jeder Änderung in dieser Datei[/b] müssen im Backend die [b]Caches geleert[/b] werden.
    [b]Erst danach[/b] die Seite neu aufrufen (Browsercache evtl. vorher leeren) und das Ergebnis ansehen.

    Ergebnis
    Alle Seiten sind aufrufbar, nicht unterstützt wird so ein Schnickschnack wie etwa Sprachen, Druckansicht usw...
    [Ich würd mich über entsprechende Ergänzungen aber freuen! :)]

    [b]Zur Frage: Wie krieg ich jetzt Ordner hin?[/b]
    Bsp.:
    Ich habe einen Baum mit folgenden Seiten:
    - Hobby
    -- Drachenfliegen
    -- Rasenmähen

    Ohne weitere Eingabe werden von RealURL automatisch folgende Pfade erzeugt:
    hobby.html
    hobby/drachenfliegen.html
    hobby/rasenmaehen.html

    Will man die [b]Namen des Unterordners[/b] (im Beispiel also das [b]hobby[/b]/drachenfliegen.html) ändern, ist folgendes zu tun:
    Es muss bei der Seite darüber der [b]Seitentyp[/b] auf [b]Erweitert[/b] gestellt werden, hier also bei Hobby.
    Dadurch wird das Feld "Speaking URL path segment" sichtbar.
    In dieses muss man den Namen des Ordners eintragen, den die Unterseiten im Pfad haben sollen.
    Trägt man hier etwa "freizeit" ein (ohne die Anführungsstriche), so ergibt sich folgendes:
    hobby.html
    freizeit/drachenfliegen.html
    freizeit/rasenmaehen.html

    Den [b]Namen der Datei[/b] hobby.html selbst kann man ändern, indem man ihr einen [b]alias[/b] zuweist (muss im System einmalig sein).

    ===

    Ich hoffe, das hilft wem, würd mich freuen. :-)

  • Gjergj Gjergj
    Padawan
    0 x
    51 Beiträge
    0 Hilfreiche Beiträge
    22. 08. 2007, 14:26 - Lösung

    Hallo Leute,

    also ich denke das ich alles richtig gemacht habe aber es taucht immer wieder der selbe fehler auf:

    Parse error: parse error, unexpected T_STRING, expecting ')' in /kunden/......../......./typo3/typo3conf/localconf.php on line 45

    ...habe die neuste Typo3 und realURL versionen, kann mir jemand weiter helfen?

    Gruß

    Gjergj


  • Gjergj Gjergj
    Padawan
    0 x
    51 Beiträge
    0 Hilfreiche Beiträge
    31. 08. 2007, 14:20

    Die .htaccess-Datei liegt im typo3-ordner!

  • Gjergj Gjergj
    Padawan
    0 x
    51 Beiträge
    0 Hilfreiche Beiträge
    31. 08. 2007, 18:50

    OOOOOOOOOOOOOOO GGGGGGGGGGGGGOOOOOOOOOOOOOTTTTTTTTTTTTTT, ich werden verrückt

    Chrissitopher my Friend ich brauche deine Hilfe,

    ....also meine domain zeigt auf: /FTP-Ordner/typo3

    Bsp.: PATH_thisScript: /kunden/kundenummer/FTP-Ordner/typo3[b]*[/b]/typo3/install/index.php

    in diesem typo3 ordner befindet sich die .htaccess[b]*[/b]-Datei

    .htaccess_________________________________________________
    RewriteEngine On
    Options +FollowSymLinks

    RewriteBase /

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

    RewriteRule ^(typo3|banner|typo3temp|typo3conf|t3lib|tslib|fileadmin|uploads|showpic\.php)/ - [L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-l

    RewriteRule (\.html|/)$ index.php

    #RewriteRule .* index.php
    _____________________________________________________________

    Typoscript___________________________________________________
    # RealURL aktivieren
    config.simulateStaticDocuments = 0
    config.baseURL = http://meinedomain.com/typo3/
    config.tx_realurl_enable = 1
    config.prefixLocalAnchors = all

    # Default PAGE object:
    page = PAGE
    page.10 = TEXT
    page.10.value = HELLO WORLD!
    _______________________________________________________________

    ext_localconf.php______________________________________________

    1. <?php
    2. $TYPO3_CONF_VARS['SC_OPTIONS'] ['t3lib/class.t3lib_tstemplate.php'] ['linkData-PostProc'] []
    3. = 'EXT:realurl/class.tx_realurl.php:&tx_realurl->encodeSpURL';
    4. $TYPO3_CONF_VARS['SC_OPTIONS'] ['tslib/class.tslib_fe.php'] ['checkAlternativeIdMethods-PostProc'] []
    5. = 'EXT:realurl/class.tx_realurl.php:&tx_realurl->decodeSpURL';
    6. $TYPO3_CONF_VARS['SC_OPTIONS'] ['t3lib/class.t3lib_tcemain.php'] ['clearAllCache_additionalTables'] ['tx_realurl_urldecodecache']
    7. = 'tx_realurl_urldecodecache';
    8. $TYPO3_CONF_VARS['SC_OPTIONS'] ['t3lib/class.t3lib_tcemain.php'] ['clearAllCache_additionalTables'] ['tx_realurl_urlencodecache']
    9. = 'tx_realurl_urlencodecache';
    10. $TYPO3_CONF_VARS['FE'] ['addRootLineFields'] .=
    11. ',tx_realurl_pathsegment,alias,nav_title,title';
    12. $TYPO3_CONF_VARS['EXTCONF'] ['realurl'] ['_DEFAULT'] = array(
    13. 'init' => array(
    14. 'enableCHashCache' => 1,
    15. 'enableUrlDecodeCache' => 1,
    16. 'enableUrlEncodeHash' => 1,
    17. // 'postVarSet_failureMode' => 'redirect_goodUpperDir',
    18. ),
    19. 'rewrite' => array(
    20. ),
    21. 'preVars' => array(
    22. /*
    23. array(
    24. 'GETvar' => 'L',
    25. 'valueMap' => array(
    26. 'de' => '0',
    27. 'en' => '1',
    28. ),
    29. 'valueDefault' => 'de',
    30. ),
    31. */
    32. ),
    33. 'pagePath' => array(
    34. 'type' => 'user',
    35. 'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
    36. 'spaceCharacter' => '-',
    37. 'languageGetVar' => 'L',
    38. 'expireDays' => 3,
    39. 'rootpage_id' => '1'
    40. ),
    41. 'fileName' => array (
    42. 'defaultToHTMLsuffixOnPrev' => 1,
    43. 'index' => array(
    44. 'page.html' => array(
    45. 'keyValues' => array (
    46. 'type' => 1,
    47. ),
    48. ),
    49. ),
    50. ),
    51. 'fixedPostVarSets' => array(
    52. ),
    53. 'postVarSets' => array(
    54. '_DEFAULT' => array(
    55. //archive
    56. 'period' => array (
    57. 'condPrevValue' => -1,
    58. 'GETvar' => 'tx_ttnews[pS]',
    59. //'valueMap => array()
    60. ),
    61. 'GETvar' => 'tx_ttnews[pL]',
    62. //'valueMap => array()
    63. ),
    64.  
    65. 'GETvar' => 'tx_ttnews[arc]',
    66. 'valueMap' => array(
    67. 'non-archived' => -1,
    68. ),
    69. ),
    70. ),
    71.  
    72. 'browse' => array (
    73. 'GETvar' => 'tx_ttnews[pointer]',
    74. ),
    75. ),
    76. 'select' => array (
    77. 'GETvar' => 'tx_ttnews[cat]',
    78. 'lookUpTable' => array (
    79. 'table' => 'tt_news_cat',
    80. 'id_field' => 'uid',
    81. 'alias_field' => 'title',
    82. 'addWhereClause'=> 'AND NOT deleted',
    83. 'useUniqueCache'=> 1,
    84. 'useUniqueCache_conf' => array (
    85. 'strtolower' => 1,
    86. 'spaceCharacter' => '-',
    87. ),
    88. ),
    89. ),
    90. ),
    91. 'article' => array(
    92. 'GETvar' => 'tx_ttnews[backPid]',
    93. // 'valueMap => array(
    94. // ),
    95. ),
    96. 'GETvar' => 'tx_ttnews[tt_news]',
    97. 'lookUpTable' => array (
    98. 'table' => 'tt_news',
    99. 'id_field' => 'uid',
    100. 'alias_field' => 'title',
    101. 'maxLength' => 12,
    102. 'addWhereClause'=> 'AND NOT deleted',
    103. 'useUniqueCache'=> 1,
    104. 'useUniqueCache_conf' => array (
    105. 'strtolower' => 1,
    106. 'spaceCharacter' => '-',
    107. ),
    108. ),
    109. ),
    110. ),
    111. ),
    112. ),
    113. );
    114. ?>

    PS: Ich bin bei domainfactory.de, falls es hilft.

    Gruß

    Gjergj

  • Darthstar Darthstar
    R2-D2
    0 x
    103 Beiträge
    0 Hilfreiche Beiträge
    06. 11. 2007, 12:08

    gobt es denn mittlerweile eine Lösung?
    Ich bekomme nur 404 seit installation (und konfiguration nach diesem Script) von RealURL

  • laymore laymore
    T3PO
    0 x
    14 Beiträge
    0 Hilfreiche Beiträge
    26. 03. 2008, 13:51

    HALLO Freunde!!! *Strahl*

    Ne jetzt mal im ernst:
    Ich habe mich lange daran aufgehalten, dass ich nicht gecheckt habe was manch anderem wohl selbstverständlich erscheint. Ich bin eine ganze Weile gaaaaanz nah an der Lösung dran gewesen und habs einfach nicht gecheckt:
    Die _.htaccess muss in .htaccess umbenannt werden. Ohne die Umbenennung gibts bei mir auch einen 404 Fehler, da die _.htaccess nicht zurate gezogen wird sondern für den Server nur irgendeine Datei ist.

    Dabei ist vielleicht folgende Randinformation für Anfänger (wie mich) ganz hilfreich:
    Dateien die mit einem Punkt im Namen beginnen, werdem von manchen Systemen versteckt. Das kann bei der Umbenennung wie oben beschrieben natürlich dazu führen, dass es zu Verwirrungen kommt. Dies ist einerseits eine serverseitige konfiguration ABER kann auch durch die üblichen Optionen im Dateimanager (FTP-Programm) beeinflusst werden.

    Hoffentlich bringts jemandem was. Für mich waren genau diese Infos von Bedeutung .

  • Wizard2003 Wizard200...
    Padawan
    0 x
    53 Beiträge
    0 Hilfreiche Beiträge
    26. 03. 2008, 19:25

    Hallo,

    habe Typo3 4.0.8 und realUrl 1.3.1 und einen komischen Effekt.

    root (ID=1)
    |- Startseite (ID=7)
    |- Seite2
    |- Menü unten
    | |- Kontakt (ID=3)
    | |- Impressum

    Die Seiten in der ersten Ebene (Startseite, Seite2) werden richtig angezeigt:
    also http://www.bla.de/startseite.html

    Die Seiten in dem Untermenü leider nicht (also Kontakt, etc.). Diese werden folgendermaßen angezeigt:
    http://www.bla.de/.html

    In der config habe ich 'rootpage_id' => '1' gesetzt

    Was mach ich falsch?

  • Wizard2003 Wizard200...
    Padawan
    0 x
    53 Beiträge
    0 Hilfreiche Beiträge
    26. 03. 2008, 19:59

    [quote="Wizard2003"]
    Was mach ich falsch?
    [/quote]

    OK. Sorry. Hab die Antwort gefunden.

    http://www.typo3.net/forum/list/list_post//75169/

    War diese AutoConfig Flag bei der Installation :-/

  • laymore laymore
    T3PO
    0 x
    14 Beiträge
    0 Hilfreiche Beiträge
    27. 03. 2008, 11:47

    [quote="Chrissitopher"]
    [...]
    Meine [b].htaccess[/b]:
    [TS]RewriteEngine On
    Options +FollowSymLinks

    RewriteBase /

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

    RewriteRule ^(typo3|banner|typo3temp|typo3conf|t3lib|tslib|fileadmin|uploads|showpic\.php)/ - [L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-l

    RewriteRule (\.html|/)$ index.php

    #RewriteRule .* index.php
    [/TS]

    [...]
    [/quote]

    So nachdem es bei mir ja offenkundig funktionierte hab ich hier und da doch einen Fehler feststellen müssen:

    Ich in meinem Projekt intern eine Verschachtelung vorgesehen, die einen Ordner "Hauptmenue" und einen Ordner "Untermenue" vorsieht. Diese Ordner sind ja nun Teil der URL (z.B.: http://www.meineseite.de/hauptmenue/unterpunkt1.html)
    Wenn ich den entsprechenden Link im Hauptmenue betätige, der intern im Ordner Hauptmenue liegt, wird folgende URL erzeugt: http://www.meineseite.de/null/unterpunkt1.html
    Diese Seite kann natürlich nicht gefunden werden also läuft irgendwo was schief.
    Mir ist bei der Fehlersuche das Hash in der letzten Zeile des Zitats aufgefallen. Ist das eine mögliche Ursache?

  • saschasch saschasch
    TYPO3-Anwärter
    0 x
    5 Beiträge
    0 Hilfreiche Beiträge
    15. 12. 2009, 08:48

    Moin moin,

    ich habe heute auch mal RealURL installiert. Aber ich bekomme das noch nicht ganz so hin.
    Meine URLs sehen jetzt so auch:
    http://www.url.de/meintyp/{ID} aber ich bekomme die Seiten Title nicht mit rein und auch kein .html

    ....

    vllt. habt ihr ja ein Tipps für mich... Danke