realUrl没有为默认语言编写preVar

时间:2013-06-14 13:33:34

标签: typo3 realurl

我正在TYPO3 4.5.26上运行realURL 1.12.6

我习惯使用realURL创建包含preVar的路径,也可以使用默认语言,例如www.example.com/de/seite/和www.example.com/en/page /

在一个案例中,这只是没有发生 - 或者我认为,只是有时候。 在大多数情况下,我会访问www.example.com/seite/和www.example.com/en/page /

哪里可以改变?

PS:这是我的realurlconf的开头:

$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' => 'L',
                         'valueMap' => array(
                                            'de' => '0',
                                            'en' => '1',
                                    ),
                         'valueDefault' => 'de',
                         'noMatch' => 'bypass',
                    ),
                    array(
                            'GETvar' => 'no_cache',
                            'valueMap' => array(
                                'no_cache' => 1,
                            ),
                            'noMatch' => 'bypass',
                    ),


            ),

2 个答案:

答案 0 :(得分:5)

如果我使用此配置(设置了valueDefault,noMatch not),则在调用urls时不会触发404错误页面 www.domain.com/notexisting/someexistingpage/ 要么 www.domain.com/notexisting /

只有在调用网址时才会触发404页面 www.domain.com/notexisting/alsonotexistingpage /

这意味着,realurl希望url的第一部分成为语言部分(此处:“notexisting”),如果realurl无法映射此键,则使用“valueDefault”。但是我想要触发404,我该怎么做呢?

编辑:我现在有了解决方案:

realurl config:

'GETvar' => 'L',
'valueMap' => array(
    'en' => '0',
    'de' => '1',
),
'noMatch' => 'bypass',

TypoScript配置:

config.defaultGetVars.L  = 0
config.linkVars = L

答案 1 :(得分:4)

从preVar配置中删除'noMatch' => 'bypass',。如果打开“www.example.com”,则GET参数“L”不会设置为“0”,因此noMatch只会绕过preVar配置。如果你只设置valueDefault,它应该可以正常工作。