Project

General

Profile

Actions

Bug #89541

open

Siteconfig.yaml with not used language-config breaks the server

Added by Christian Hackl over 4 years ago. Updated over 3 years ago.

Status:
Accepted
Priority:
Should have
Assignee:
-
Category:
Link Handling, Site Handling & Routing
Target version:
-
Start date:
2019-10-30
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
9
PHP Version:
7.2
Tags:
Complexity:
Is Regression:
Sprint Focus:

Description

Siteconfig.yaml with a second language config which is currently not used at the backend - so no translation exists, tries to get the 404 page in the selected language (which does not exists).

For example:
SiteConfig:

languages:
  -
    title: Deutsch
    enabled: true
    languageId: '0'
    base: /
    typo3Language: de
    locale: de_DE.UTF-8
    iso-639-1: de
    navigationTitle: Deutsch
    hreflang: de
    direction: ltr
    fallbackType: strict
    fallbacks: ''
    flag: de
  -
    title: English
    enabled: true
    languageId: '2'
    base: /en/
    typo3Language: default
    locale: en_US.UTF-8
    iso-639-1: en
    navigationTitle: English
    hreflang: en
    direction: ltr
    fallbackType: strict
    fallbacks: ''
    flag: en-us-gb

If the Backend has no translation and no language defined, then you try to get "domain.tld/en", then TYPO3 tries to get the "domain.tld/en/404" page over and over again - infinite loop (which does not exist).
Until the webserver crashes.

Actions #1

Updated by Christian Eßl about 4 years ago

  • Category set to Link Handling, Site Handling & Routing
Actions #2

Updated by Georg Ringer about 4 years ago

  • Status changed from New to Needs Feedback

hey,

so also no sys_language exists? then this behaviour is ok as the config.yaml is the single point of truth.

Actions #3

Updated by Christian Hackl about 4 years ago

Georg Ringer wrote:

hey,

so also no sys_language exists? then this behaviour is ok as the config.yaml is the single point of truth.

but if no sys_language exists then shouldn't TYPO3 provide an available 404 page instead of hanging in a loop?

Actions #4

Updated by Benni Mack almost 4 years ago

Christian Hackl wrote:

Georg Ringer wrote:

hey,

so also no sys_language exists? then this behaviour is ok as the config.yaml is the single point of truth.

but if no sys_language exists then shouldn't TYPO3 provide an available 404 page instead of hanging in a loop?

The only way to "overcome" this would be a sanity check in the Sites module or Reports module to show that there are languages configured that are not in the database. At the time of the frontend, there is no database connection (and no check if a sys_language record or a page even exists).

At the same time, we could catch the "infinite loop" somehow.

Actions #5

Updated by Georg Ringer over 3 years ago

  • Status changed from Needs Feedback to Accepted
Actions

Also available in: Atom PDF