3

我在 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',
                    ),


            ),
4

2 回答 2

5

如果我使用此配置(设置了 valueDefault,未设置 noMatch),则在调用诸如 www.domain.com/notexisting/someexistingpage/ 或 www.domain.com/notexisting/ 之类的 URL 时不会触发 404 错误页面

404 页面仅在调用诸如 www.domain.com/notexisting/alsonotexistingpage/ 之类的 url 时触发

这意味着,realurl 期望 url 的第一部分是语言部分(这里:“notexisting”),如果 realurl 不能映射这个键,它使用“valueDefault”。但是我想触发 404,我该如何实现呢?

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

真实网址配置:

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

打字稿配置:

config.defaultGetVars.L  = 0
config.linkVars = L
于 2015-02-05T23:53:19.033 回答
4

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

于 2013-06-17T08:26:14.503 回答