Zum Inhalt springen

Real URL Einrichtung mit einer Subdomain

Erstellt am 8. Juni 2010 · 1 Antwort · letzte Antwort am 8. Juni 2010

Tags: RealURL, URLs & Routing, Frage

montharon ·

Real URL Einrichtung mit einer Subdomain

Hallo und schönen guten Morgen!

Ich benutze Typo3 4.3.3 mit Real URL 1.8.1 und versuche noch schon seit einiger
Zeit mehrere Domänen (also verschiedene Seitenbäume) einzurichten.
Gelesen habe ich bereits einiges über Domain Records, Real URL Config usw., aber
irgendwie scheine ich nicht zu 100% damit klarzukommen.

Vorab gleich einmal mein Seitenbaum:

hauptdomain.com
  sub1.hauptdomain.com
    Root
      Home
      ...
      ...

  sub2.hauptdomain.com
    Root
      Home
      ...
      ...

Und hier meine Real URL Konfiguration:

<?php
/**
 *
 * aeUrlTool default realurl configuration
 * based on realurl-configuration of news.typo3.org
 * 	http://news.typo3.org/about/realurl-configuration/
 *
 */

$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'] = array (
    '_DEFAULT' => array (
        'init' => array (
            'enableCHashCache' => '1',
            'appendMissingSlash' => 'ifNotFile',
            'enableUrlDecodeCache' => '1',
            'enableUrlEncodeCache' => '1',
        ),
        'redirects' => array (
        ),
        'preVars' => array (
            '0' => array (
                'GETvar' => 'no_cache',
                'valueMap' => array (
                    'nc' => '1',
                ),
                'noMatch' => 'bypass'
            ),
            '1' => array (
                'GETvar' => 'L',
                'valueMap' => array (
                    'de' => '0',
                    'en' => '1',
                ),
                'noMatch' => 'bypass',
            ),
            '2' => array (
                'GETvar' => 'lang',
                'valueMap' => array (
                    'de' => 'de',
                    'en' => 'en',
                ),
                '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' => '2',
        ),
        'fixedPostVars' => array (
        ),
        'postVarSets' => array (
            '_DEFAULT' => array (
                'datum' => array (
                    '0' => array (
                        'GETvar' => 'tx_ttnews[year]',
                    ),
                    '1' => array (
                        'GETvar' => 'tx_ttnews[month]',
                        'valueMap' => array (
                            'jaenner' => '01',
                            'februar' => '02',
                            'maerz' => '03',
                            'april' => '04',
                            'mai' => '05',
                            'juni' => '06',
                            'juli' => '07',
                            'august' => '08',
                            'september' => '09',
                            'oktober' => '10',
                            'november' => '11',
                            'dezember' => '12',
                        ),
                    ),
                ),
                'browse' => array (
                    '0' => array (
                        'GETvar' => 'tx_ttnews[pointer]',
                    ),
                ),
                'kategorie' => array (
                    '0' => array (
                        'GETvar' => 'tx_ttnews[cat]',
                    ),
                ),
                'artikel' => array (
                    '0' => 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' => '-',
                            ),
                        ),
                    ),
                    '1' => array (
                        'GETvar' => 'tx_ttnews[swords]',
                    ),
                ),
            ),
        ),
        'fileName' => array (
//
// if you don't want .html-URLs set the following to "false" (e.g. 'defaultToHTMLsuffixOnPrev' => false,)
// then you get http://www.yourdomain.com/imprint/ instead of http://www.yourdomain.com/imprint.html
//
            'defaultToHTMLsuffixOnPrev' => false,
            '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',
                    ),
                ),
            ),
        ),
    ),
);

$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.hauptdomain.com'] = $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'];
$TYPO3_CONF_VARS['EXTCONF']['realurl']['sub2.hauptdomain.com'] = $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'];
$TYPO3_CONF_VARS['EXTCONF']['realurl']['sub2.hauptdomain.com']['pagePath']['rootpage_id'] = 1;
?>

Typo3 ist im Verzeichnis content auf meinem Webspace eingerichtet, d.h. auch die
Hauptdomain ist über www.hauptdomain.com/content erreichbar.

Das Root Template von sub1.hauptdomain.com sieht also folgendermassen aus:

config {
  # --- realurl konfigurieren
  simulateStaticDocuments = 0
  baseURL = http://www.hautpdomain.com/content/
  tx_realurl_enable = 1
}

Das Root Template von sub2.hauptdomain.com sieht so aus:

config {
  # --- realurl konfigurieren
  simulateStaticDocuments = 0
  baseURL = http://sub2.hautpdomain.com/content/
  tx_realurl_enable = 1
}

Dann habe ich noch einen Domain Record auf der Root Seite von sub2.hauptdomain.com
angelegt, wobei ich aber nicht weiß, ob das überhaupt stimmt?

sub2.hauptdomain.com
Dauerhaft verschoben
sub2.hauptdomain.com/content/

Mich würden vor allem die Grundlagen dahinter interessieren und wie die einzelnen
Komponenten zusammenspielen?

Meine .htaccess sieht so aus:

# Enable URL rewriting
RewriteEngine On
RewriteBase /content
RewriteRule ^typo3$ - [L]
RewriteRule ^typo3/.*$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule .* index.php
RewriteRule ^(.*)\.htm$ /index.php

Was läuft jetzt genau wie ab, wenn man z.B.: www.hauptdomain.com/content in den Browser eingibt?
Ich würde gerne nicht einfach eine fertige Config verwenden, sondern auch verstehen
was da im Hintergrund abläuft...
Was macht die .htaccess Datei?
Wann und wo greift das Real URL ein?
Was macht dann der Domain Record?
Wo richte ich das ein, dass ich das /content in Zukunft weglassen kann und der
User einfach nur www.hauptdomain.com einzugeben braucht

Und vor allem:
WIE muss meine Konfiguration für das oben dargestellte Szenario aussehen?

Vielen Dank für eure Hilfe!
montharon

skydivematy ·

Hier mal ne config die auf typo3 4.4 beta3 und 4.3 läuft. realurl 1.9.2

REALURL_CONF

<?php
$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' => '0',
			                      //'de' => '1',
				'valueDefault' => 'en',
                                        ),
                                '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,
        ),
    'fixedPostVars' => array(
       'news' => array(           
        array(
          'GETvar' => 'tx_ttnews[pointer]',
          'valueMap' => array(),
          'noMatch' => 'bypass',
        ),
        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' => '-',
            ),
            'languageGetVar' => 'L',
            'languageExceptionUids' => '',
            'languageField' => 'sys_language_uid',
            'transOrigPointerField' => 'l18n_parent',
            'autoUpdate' => 1,
            'expireDays' => 180,
          ),
        ),
      ),
     ),
    'postVarSets' => array(
        '_DEFAULT' => array(
'user' => array (
		array(
				'GETvar' => 'tx_srfeuserregister_pi1[regHash]',
	),
),
'register' => array(
		'type' => 'single',
		'keyValues' => array(
		'tx_srfeuserregister_pi1[cmd]=edit' => 1,
					),
				),
'register_edit' => array(
		'type' => 'single',
		'keyValues' => array(
		'tx_srfeuserregister_pi1[cmd]=create' => 1,
					),
				),
'portal_users' => array(
		'type' => 'single',
		'keyValues' => array(
		'tx_srfeuserregister_pi1[token]' => 1,
					),
				),
'forgot_password' => array(
		'type' => 'single',
		'keyValues' => array(
		'tx_newloginbox_pi1[forgot]' => 1,
					),
				),
//archive
            'period' => array (
            array (
                'condPrevValue' => -1,
                'GETvar' => 'tx_ttnews[pS]',
                //'valueMap => array()
            ),
            array (
            'GETvar' => 'tx_ttnews[pL]',
            //'valueMap => array()
            ),
            array (
           'GETvar' => 'tx_ttnews[arc]',
           'valueMap' => array(
                'non-archived' => -1,
                ),
              ),
            ),
            'browse' => array (
            array (
                'GETvar' => 'tx_ttnews[pointer]',
              ),
            ),
            'select' => array (
            array (
                'GETvar' => 'tx_ttnews[cat]',
                'lookUpTable' => array (
                    'table' => 'tt_news_cat',
                    'id_field' => 'uid',
                    'alias_field' => 'title',
                    'addWhereClause'=> 'AND NOT deleted',
                    'useUniqueCache'=> 1,
                    'useUniqueCache_conf' => array (
                        'strtolower' => 1,
                        'spaceCharacter' => '-',
                    ),
                ),
            ),
         ),
			// 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',
		)
	),
),
            'article' => array(
                array (
                    'GETvar' => 'tx_ttnews[backPid]',
                    // 'valueMap => array(
                    // ),
                ),
                array (
                    'GETvar' => 'tx_ttnews[tt_news]',
                    'lookUpTable' => array (
                        'table' => 'tt_news',
                        'id_field' => 'uid',
                        'alias_field' => 'title',
                        'maxLength' => 12,
                        'addWhereClause'=> 'AND NOT deleted',
                        'useUniqueCache'=> 1,
                        'useUniqueCache_conf' => array (
                            'strtolower' => 1,
                            'spaceCharacter' => '-',
                        ),
                    ),
                ),
            ),
        ),
    ),
);
// // RealURL - valueMap creation for tt-news
for($x=1; $x<=100; $x++) {
    $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['news'][0]['valueMap'][$x+1] = $x;
}
// NEWS Domain 0 START
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['7'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['8'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['74'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['75'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['190'] = 'news';
// END NEWS Domain 0
// 
// Domain 1 NEWS START
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['161'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['162'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['163'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['164'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['165'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['316'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['317'] = 'news';
// Domain 1 NEWS END
//
// Domain 2 NEWS START
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['187'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['188'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['189'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['190'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['191'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['488'] = 'news';
// Domain 2  NEWS END
//
// Domain 3  NEWS START
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['250'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['251'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['252'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['253'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['254'] = 'news';
// Domain 3 NEWS END
//
// Domain 4  NEWS START
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['270'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['271'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['272'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['273'] = 'news';
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['fixedPostVars']['274'] = 'news';
// Domain 4  NEWS END
//
// MULTIDOMAIN PART START ##########################################################
// Domain DEFAULT PAGE
$TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT']['enableDomainLookup'] = 1;
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.hauptdomain.com'] = $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'];
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.hauptdomain.com']['pagePath']['rootpage_id'] = 1;
//
// Domain 1
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.subdomain1.hauptdomain.com'] = $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'];
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.subdomain1.hauptdomain.com']['pagePath']['rootpage_id'] = 169;
//
// Domain 2
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.subdomain2.hauptdomain.com'] = $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'];
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.subdomain2.hauptdomain.com']['pagePath']['rootpage_id'] = 146;
//
// Domain 3
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.subdomain3.hauptdomain.com'] = $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'];
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.subdomain3.hauptdomain.com']['pagePath']['rootpage_id'] = 167;
//
// Domain 4
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.subdomain4.hauptdomain.com'] = $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'];
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.subdomain4.hauptdomain.com']['pagePath']['rootpage_id'] = 171;
//
// Domain 5
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.subdomain5.hauptdomain.com'] = $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'];
$TYPO3_CONF_VARS['EXTCONF']['realurl']['www.subdomain5.hauptdomain.com']['pagePath']['rootpage_id'] = 667;
//
// MULTIDOMAIN PART END ##########################################################

SETUP TEMPLATE

config.simulateStaticDocuments  = 0
config.baseURL = deine domain
config.tx_realurl_enable = 1
config.prefixLocalAnchors = all

config.typolinkCheckRootline = 1
config.typolinkEnableLinksAcrossDomains = 1

gruß
maty