Zum Inhalt springen

RealURL und baseURL = 1

Erstellt am 6. September 2006 · 8 Antworten · letzte Antwort am 9. September 2006

Tags: RealURL, URLs & Routing, Frage

dirsu ·

Hallo zusammen,
bei der Konfiguration von RealURL wird empfohlen "config.baseURL = 1" im Template zu setzen. Leider ist das seit Typo3 3.8.x nicht erlaubt.

Ich habe aber Websites, die von verschiedensten URLs aufgerufen werden. Da ich hier keine Lust habe das immerzu die Template anzupassen, habe ich einfach die Änderungen im Sourcecode rückgängig gemacht.

File typo3_src/typo3/sysext/cms/tslib/class.tslib_pagegen.php :

bisher :

  if ($GLOBALS['TSFE']->config['config']['baseURL']==='1')  {
    // epreciated property, going to be dropped.
    $error = 'Depreciated Typoscript property was found ...
    "config.baseURL="1"
    ...
    for more information.';
    $GLOBALS['TSFE']->printError(nl2br($error));
    exit;
  } else {

neu :

  if ($GLOBALS['TSFE']->config['config']['baseURL']==='1')  {
    $GLOBALS['TSFE']->baseUrl = t3lib_div::getIndpEnv('TYPO3_SITE_URL');
  } else {

Vielleicht sollte Kasper in solchen Fällen zukünftig doch einfach nur auf das "Problem" hinweisen und es dem Admin (über Parameter) entscheiden lassen, ob er hier eingreifen will.

Vielleicht hilft der Artikel ja jemand anderen ...

Viel Spass damit,
Dirk

steffenk ·

moin,

zum einen ist es längst nicht mehr Kasper, der diese Modifikationen durchführt,
zum anderen wäre es sinnvoller, solche Problematiken in der bug-Liste zu posten, um Typo3 auf Dauer zu verbessern 😉

dirsu ·

Ach ja ...

Eine andere Alternative ist die Einführung eines neuen Konfigurationparameters "config.allowBaseURL" :

  if ($GLOBALS['TSFE']->config['config']['baseURL']==='1')	{
    if ($GLOBALS['TSFE']->config['config']['allowBaseURL']==='1')	{
      $GLOBALS['TSFE']->baseUrl = t3lib_div::getIndpEnv('TYPO3_SITE_URL');
    } else {
      // epreciated property, going to be dropped.
      $error = 'Depreciated Typoscript property was found ...
              ...
      exit;
    }
  } else {

Hiernach kann "config.baseURL = 1" im Template mit "config.allowBaseURL = 1" erlaubt werden.

.. und "in der bug-Liste zu posten". Ich denke Kasper (oder der Betreffende) wird sich was bei gedacht haben, als er er ausschaltete. Aber das ist nicht das Thema hier.. hier soll es nur einen "backport" 😉 geben

steffenk ·

noch einen Parameter fänd ich verwirrend, besser wäre es, beide Schreibweisen zuzulassen. Ich habe mal eine Diskussion in der dev-Liste angeregt, mal schauen ...

dirsu ·

Hallo Steffen,
die dort beschriebene Konfiguration hatte ich auch schon mehrfach im Foren und auch in der Typo3-Doku gesehen. Sie taugt aber eigentlich nur, wenn man mit wenigen sich nicht ändernden Domains, also immer mit bekannten URLs, kommt.

Bei dem Kunden, für den ich jetzt "meine" Lösung implementiert habe, geht es um 80 Domains. Und oft kommen noch welche dazu 😉.

Da gefällt mir "config.baseURL = 1" besser 😉)

Grüße,
Dirk

Spyker ·

naja...

ich bin zufrieden so wie es ist. Ich denke mal das Typo3 Core devs das nicht raus genommen haben um die User zu nerven.

PS: Mach lieber eine Extension die das regelt(wenn es geht), als im Core rumzufuschen.

Beste,
Tim

Spyker ·

Die Extension fl_allowbaseurl1 greift so in Typo3 ein, dass die Konfigurationsvariable baseURL auch wieder mit dem wert 1 benutzt werden kann. Wird der wert auf 1 gesetzt, schreibt die Extension automatisch die richtige BaseURL in die Konfiguration und gibt diese an Typo3 weiter.

Zur Extension: http://typo3.fruit-lab.de/typo3-extensions/fl-allowbaseurl1.html

Ich glaube das ist ein bisschen sauberer als irgentwas im Core zu Fuschen. Wenn das Ext installieren auch kein Spaß macht, dann kannste ja als sysextension mit rein legen.

Beste,
Tim

Spyker ·

Extension wurde aus dem TER gelöscht.

Hier der E-Mail austausch mit Rupert Germann:

Hallo Tim,

Die Extension fl_allowbaseurl1 öffnet ein Sicherheitsloch, das eigentlich mit
TYPO3 3.8.1 geschlossen wurde.

Siehe:

http://typo3.org/teams/security/security-bulletins/typo3-20051114-6/

und:

http://wiki.typo3.org/index.php/TYPO3_3.8.1

Ich werde die Extension aus dem TER löschen. Und bitte lade so etwas nicht
mehr hoch.

Mail2:

Hallo Tim,

danke für dein Verständnis.

On Saturday 09 September 2006 10:42, you wrote:
[...]
> > Darf ich deine E-Mail (mit den Link) in das Forum kopieren?

ja

noch ein Kommentar zu dem thread:
wenn es bei sehr vielen Domains zu aufwändig ist für jede eine Condition zu
erstellen, kann man auch Wildcards benutzen.

siehe TSREF:

https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/Conditions/Index.html
....
Comparison:

This is a direct match on global strings.

You have the options of putting a "*" as a wildcard or using a PCRE style
regular expression (must be wrapped in "/") to the value.
....