Zum Inhalt springen

RealURL funktioniert nicht

Erstellt am 31. Mai 2007 · 2 Antworten · letzte Antwort am 31. Mai 2007

Tags: Frage

Steinheimer ·

Guten Morgen allerseits,

mein erster Post in diesem Forum, und schon geht es um ein Problem. ;-)

Ich habe auf meinem lokalen Test-Server eine Typo3-Installation in der Version 3.8.1 am laufen und möchte diese mit der Extension RealURL 1.1.0 betreiben, damit URL's benutzerfreundlicher und schöner dargestellt werden.

Bevor ich nun zum eigentlichen Problem komme, gebe ich euch erstmal alle relevanten Informationen.

1. TypoScript Setup-Code im Template:

config{
  index_enable = 1         # for pages
  index_externals = 1     # for documents
  admPanel = 0
  admPanel.enable.edit = 1
  admPanel.module.edit.forceDisplayFieldIcons = 1
  simulateStaticDocuments = 0
  baseURL = http://localhost/typo3test/
  tx_realurl_enable = 1
  prefixLocalAnchors = all
  linkVars = print, type, L
}

2. Inhalt der .htaccess-Datei:

RewriteEngine On
RewriteRule ^typo3$ - [L]
RewriteRule ^typo3/.*$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule .* index.php

3. Inhalt der Datei ext_localconf.php:

<?php
$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,alias,nav_title,title';


$TYPO3_CONF_VARS['EXTCONF'] ['realurl'] ['_DEFAULT'] = array(

'init' => array(
       'enableCHashCache' => 1,
       'enableUrlDecodeCache' => 1,
       'enableUrlEncodeHash' => 1,
),

'rewrite' => array(
          'suche/' => 'siteservice/suche.htm',
),

'redirect' => array(
        'suche/' => 'siteservice/suche.htm',
),

'preVars' => array(
        array(
              'GETvar' => 'type',
              'valueMap' => array(
                         'print' => '1',
              ),

        'noMatch' => 'bypass',
),

),

'pagePath' => array(
        'type' => 'user',
        'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
        'spaceCharacter' => '-',
        'languageGetVar' => 'L',
        'expireDays' => 3,
        'rootpage_id' => '1'
),

'fileName' => array (
'defaultToHTMLsuffixOnPrev' => 1,
'index' => array(
'page.html' => array(
'keyValues' => array (
'type' => 1,
),
),
),
),

'postVarSets' => array(

'_DEFAULT' => array(
         'nach' => array (
                           array (
                           'condPrevValue' => -1,
                           'GETvar' => 'tx_indexedsearch[sword]',
                           ),
                      ),
         'step' => array (
                           array (
                           'GETvar' => 'step',
                           ),
                      ),
  ),
),
'fixedPostVarSets' => array(
'test' => array(
   array(
'GETvar' => 'tx_indexedsearch[sword]',
),
   ),   
'315' => 'test',
),
);
?>

4. Webserver-Konfiguration:

[b]1. Apache:[/b] 2.2.4
[b]2. PHP:[/b] 5.2.2
[b]3. MySQL:[/b] 5.0.37

Nun zum eigentlichen Problem:

Die Extension RealURL scheint an sich schon einigermaßen zu arbeiten, da die URL's zu den Unterseiten zum Beispiel in http://localhost/typo3test/unternehmen/kontakt.html umgeschrieben werden.

Wenn ich allerdings auf solch eine URL klicke, erscheint nur folgende Fehlermeldung:

Not Found

The requested URL /typo3test/unternehmen/kontakt.html was not found on this server.

Man beachte das nicht vorangestellte "localhost" in der Fehlermeldung, obwohl dies in der URL angezeigt wird und auch im Template richtig definiert sein müsste.

Des Weiteren spuckt die Website mehrfach folgende PHP-Fehlermeldung aus:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in D:\Dokumente und Einstellungen\User\Desktop\SERVER\Intranet\typo3test\t3lib\class.t3lib_db.php on line 729

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in D:\Dokumente und Einstellungen\User\Desktop\SERVER\Intranet\typo3test\t3lib\class.t3lib_db.php on line 741

Und ganz am Schluss:

Warning: Cannot modify header information - headers already sent by (output started at D:\Dokumente und Einstellungen\User\Desktop\SERVER\Intranet\typo3test\t3lib\class.t3lib_db.php:729) in D:\Dokumente und Einstellungen\User\Desktop\SERVER\Intranet\typo3test\tslib\class.tslib_fe.php on line 2614

Dennoch wird die Website ganz unten korrekt aufgebaut.

Meine Frage lautet nun:
Was habe ich falsch gemacht? Wie muss ich RealURL konfigurieren, damit es läuft? Wieso tauchen auf einmal diese Fehlermeldungen auf?

Ich bin für jede Hilfe sehr dankbar! :-)

Viele Grüße,
Thomas

Steinheimer ·

ModRewrite ist aktiviert und laut PHP auch geladen. Allerdings konnte ich das Problem jetzt schon teilweise beheben.

In der httpd.conf-Datei musste ich folgende Zeile ändern:

Von:

AllowOverride None

In:

AllowOverride FileInfo

Desweiteren musste ich in der Datei ext_localconf.php folgender Variable die ID der Startseite zuweisen:

Änderung an der Datei ext_localconf.php:

'rootpage_id' => '185'

Jetzt werden zumindest die Seiten nach einem Klick auf die entsprechende URL aufgerufen. Das Problem mit den hunderten Fehlermeldungen, die PHP ausspuckt, ist allerdings immernoch vorhanden.

Ich denke, dass der Fehler auch hier irgendwo in der Datei ext_localconf.php liegt. Fragt sich nur wo!? Da hilft wohl leider nur ausprobieren. :-(

Viele Grüße,
Thomas