Zum Inhalt springen

RealUrl 2 Probleme

Erstellt am 7. August 2006 · 3 Antworten · letzte Antwort am 7. August 2006

Tags: Frage

jrab ·

Hi,

ich habe mir nun eine seltsame RealURL anhand von tutorials und Posts hier zusammengebastelt:

.htaccess:

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

localconf:

$TYPO3_CONF_VARS['EXTCONF']['realurl'] = array(
 '192.168.16.19' => '_DEFAULT',
 'localhost' => '_DEFAULT',
);

$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(
    'en' => '1',
    'de' => '0',
   ),
   'noMatch' => 'bypass',
  ),
 ),
 'fileName' => array (
  'defaultToHTMLsuffixOnPrev' => true,
  'index' => array(
   'backend.php' => array(
    'keyValues' => array (
     'type' => 100,
    )
   ),
   'print' => array(
    'keyValues' => array(
   'type' => 98,
   )
   ),
  ),
 ),
 'postVarSets' => array(
  '_DEFAULT' => array (
   'news' => 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]',
     ),
   ),
   '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
 ),
);


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

$TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['clearPageCacheEval']['tx_realurl'] = 'EXT:realurl/class.tx_realurl.php:&tx_realurl->clearPageCacheMgm';

$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['FE'] ['addRootLineFields'] .=',tx_realurl_pathsegment,alias,nav_title,title';

ts-root:

config.no_cache=1
config.simulateStaticDocuments = 0
config.baseURL = http://192.168.16.19/
config.tx_realurl_enable = 1
config.prefixLocalAnchors = all

Ich habe jetzt folgende 2 Probleme:

1. temporär erzeugten Bildern meiner grafischen Navigation wird kein absoluter Pfad vorgesetzt. Im HTML-Quellcode sieht es so aus:

<script type="text/javascript">
	/*<![CDATA[*/
<!--
if (version == "n3") {
img3_1a43_0_n=new Image(); img3_1a43_0_n.src = "typo3temp/menu/73f27dcf95.gif";

Müsste aber mit der baseURL stehen. Wie kann ich das aktivieren?

2. Ich erhalte folgende PHP-Warnung:

Warning: reset() [function.reset]: Passed variable is not an array or object in /srv/www/typo3_test/typo3/sysext/cms/tslib/class.tslib_fe.php on line 3592

Warning: Variable passed to each() is not an array or object in /srv/www/typo3_test/typo3/sysext/cms/tslib/class.tslib_fe.php on line 3593

Es hat irgendwas mit dieser Zeile zu tun:

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

Kann mir jemand da weiterhelfen?

Vielen Dank + Gruß.

jrab ·

Ich bin der Obernerd!!

Folgende Zeile im root-ts bringts, zusätzlich zu baseURL:

config.absRefPrefix = http://192.168.16.19/

Ein Blick in class.ts_lib_menu.php hat geholfen. Die Dokus nicht.

jrab ·

#angry# Ich nehms zurück, diese Zeile bewirkt zwar, daß absolute Url-Pfade in sämtlichen Javascript-urls, Stylesheets etc. geschrieben werden, schaltet jedoch realURL einfach ab!!!

jrab ·

Im realURL Config:

'redirects' => array('' => '/typo3_test/','typo3temp/' => '/typo3_test/typo3temp/','fileadmin/'=>'/typo3_test/fileadmin/'),

bewirkt dass beim ersten Aufruf einer Seite die Fehlermeldung weiterhin erscheint, beim 2. Aufruf jedoch nicht mehr (Caching?)...