Zum Inhalt springen

EIN Content, ZWEI Template-Seiten

Erstellt am 9. November 2004 · 22 Antworten · letzte Antwort am 30. März 2005 · Seite 1 von 2

Tags: Frage

maxhb ·

Hi!
Versuchs mal mit

config.linkVars = layer

So übernimmt Typo3 einen einmal gesetzten Wert für layer automatisch für alle weiteren Seiten und Du musst nicht jeden Link verändern.

CU
maxhb

stoefln ·
maxhb schrieb

Hi!
Versuchs mal mit

config.linkVars = layer

So übernimmt Typo3 einen einmal gesetzten Wert für layer automatisch für alle weiteren Seiten und Du musst nicht jeden Link verändern.

CU
maxhb

Hab das probiert. Bei mir wird aber kein typeparameter in die Links übernommen- sobald ich also auf eine andere Seite springe habe ich wieder mein Standardlayout🙁
Wie kann das sein?

stoefln ·

Hab zwar keine Ahnung warum ihr "layer" eingetragen habt, aber mit config.linkVars = L, type würds bei mir funktionieren wenn ich nicht simulatestaticdocuments aktiviert hätte. Dadurch reagiert T3 nicht auf den type-parameter🙁

onkelfusspilz ·

Hi,

config.linkvars = X hält den Parameter X konstant in den generierten URL's.

Also bei mir steht da auch

config.linkvars = type

Aber ich arbeite nicht mit simulatestaticdocuments. Soweit ich mich aber erinnere wird der Parameter type durch die RewriteEngince des Apache verarbeitet. Aus index.0.0.html sollte index.php?id=0&type=0 werden. Vielleicht ist bei Dir ein Fehler in der RewriteRule.

stoefln ·
onkelfusspilz schrieb

Hi,

config.linkvars = X hält den Parameter X konstant in den generierten URL's.

Also bei mir steht da auch

config.linkvars = type

Aber ich arbeite nicht mit simulatestaticdocuments. Soweit ich mich aber erinnere wird der Parameter type durch die RewriteEngince des Apache verarbeitet. Aus index.0.0.html sollte index.php?id=0&type=0 werden. Vielleicht ist bei Dir ein Fehler in der RewriteRule.

Versteh die rewrite-rule nicht ganz, aber müssten dann nicht zumindest die links in der form test.34.5.html vorhanden sein? die Links werden doch von T3 erstellt und haben nichts mit der Rewrite-rule zum tun oder?

onkelfusspilz ·

Richtig, typo3 sollte die Links bereits in der Form test.34.5.html erzeugen.

Dein simulateStatic scheint garnicht aktiv zu sein, folgendes etwa muss in deinem Template stehen:

config.simulateStaticDocuments = 1
config.simulateStaticDocuments_noTypeIfNoTitle=1
config.simulateStaticDocuments_addTitle=20

Nachzulesen auch bei #20836. Vielleicht hast Du ja einfach mit Gross-/Kleinschreibung oder so was falsch gemacht?

stoefln ·

Hey danke für den Tipp. Simulatestaticdocuments war zwar aktiv, aber T3 hat die Links ohne Type-parameter generiert.
Nachdem ich das Setup um config.simulateStaticDocuments_addTitle=20
erweitert habe, werden Links FAST richtig generiert: wenn ich die Seite test.334.5.html aufrufe bekomme ich die seite mit dem entsprechenden Template, allerdings werden alle links mit dem type-wert 0 statt 5 generiert, also test3.335.0.html wodurch ich wieder auf das standardtemplate zurückverwiesen werde🙁

onkelfusspilz ·

Also wenn ich Dich richtig verstehe können die unterschiedlichen type - Seiten nun angesprochen werden, enthalten dann aber immer Links auf type=0, richtig?

Dazu musste in Deinem Template lediglich

config.linkVars = type

setzen und es sollte gehen.

stoefln ·
onkelfusspilz schrieb

Also wenn ich Dich richtig verstehe können die unterschiedlichen type - Seiten nun angesprochen werden, enthalten dann aber immer Links auf type=0, richtig?

ansich richtig.

onkelfusspilz schrieb

Dazu musste in Deinem Template lediglich

config.linkVars = type

setzen und es sollte gehen.

das würde funktionieren wenn ich nicht simulatestaticdocuments aktiviert hätte. In diesem Fall wird ja der typewert nicht als get-parameter sondern direkt im Filenamen kodiert. Wenn ich config.linkVars = type setze wird zwar der typeparameter als &type=5 in den Links integriert, bringt mir aber nichts da dieser nicht mehr berücksichtigt wird sobald man simulatestaticdocuments aktiviert hat.

onkelfusspilz ·

Also wenn ich das nicht völig falsch verstanden habe ist es Aufgabe der RewriteEngine von Apache Deinen statischen Namen wieder zu den php Parametern aufzulösen.

Das sollte dann etwa so ausschauen:

RewriteEngine On
RewriteBase /typo3
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^typo3$ typo3/index_re.php
RewriteRule ^([0-9]+)[.]([0-9]+).html$ index.php?id=$1&type=$2

Hast Du das so? Stell doch sonst mal das debugging für ModRewrite an dann kannst Du sehen welche URL's er generiert.

stoefln ·

Hab leider keine Ahnung was die Rewriteengine macht, hab deine Konfiguration probiert, ändert jedoch nichts.
Wo und wie kann man das Debugging für ModRewrite aktivieren?

onkelfusspilz ·

Hi,

ich fürchte Du musst Dich mit ModRewrite schon ein wenig befassen. Wenn Du nichtmal weisst was das ist, solltest Du mal bei einer Suchmaschine wie www.google.de "mod rewrite" oder so eingeben, dann bekommst Du als ersten Treffer http://httpd.apache.org/docs/mod/mod_rewrite.html .

Aber im Grunde genommen hat mein vorvorletztes Posting Deine Frage bereits beantwortet, in dem Thread #20836 steht nämlich einiges über mod_rewrite drin, zum Beispiel auch folgende Zeilen aus der apache.conf

# To assist in debugging rewriting, you could use these lines
# DON'T enable it for production!
# This will only work in httpd.conf, not in .htaccess files
#RewriteLog /var/log/apache/rewrite.log
#RewriteLogLevel 9

Ich überlasse es Deiner Kreativität wie man das Logging aktiviert.

Lies Dir die Antworten bitte mal etwas genauer durch, wenn sich jemand schon die Mühe macht Dir zu helfen.

Ich hoffe das hilft Dir ein wenig weiter, ohne mod_rewrite ist das Verhalten deines Typo3 soweit ich es beurteilen kann völlig normal.

stoefln ·

Welchen Teil deiner Antwort habe ich nicht genau gelesen?
Hab inzwischen schon etwas reingeschnüffelt in das ModRewrite Modul. Das ganze ist aber so umfangreich dass ich mir schwer tue das richtige zu finden.
Trotzdem verstehe ich nochimmer nicht warum das Modrewritemodul für mein Problem verantwortlich sein soll. Die Links (im HTML) werden doch von Typo3 generiert nur halt mit dem typewert 0 statt 5.

...wenn ich die Seite test.334.5.html aufrufe bekomme ich die seite mit dem entsprechenden Template, allerdings werden alle links mit dem type-wert 0 statt 5 generiert, also test3.335.0.html wodurch ich nach klicken auf einen Link wieder auf das standardtemplate zurückverwiesen werde

onkelfusspilz ·

Ich meinte konkret den Link #20836 den ich Dir gepostet hatte. Der beantwortet ja die Frage was mod_rewrite ist und auch wie man das Debugging aktiviert.

Das die Type-Werte nicht erhalten bleiben ist wieder die Sache mit dem "config.linkVars = type", ich habe aus Deinem Posting aber ein anderes Problem gedeutet:

das würde funktionieren wenn ich nicht simulatestaticdocuments aktiviert hätte. In diesem Fall wird ja der typewert nicht als get-parameter sondern direkt im Filenamen kodiert. Wenn ich config.linkVars = type setze wird zwar der typeparameter als &type=5 in den Links integriert, bringt mir aber nichts da dieser nicht mehr berücksichtigt wird sobald man simulatestaticdocuments aktiviert hat.

Ich bin davon ausgegangen, daß die Links von Typo3 richtig generiert werden (d.h. in der Form test.45.5.html bei type=5) und diese nur nicht richtig aufgelöst werden wenn man den Links folgt.

Lag ich daneben?

stoefln ·
onkelfusspilz schrieb

Lag ich daneben?

Ja du lagst daneben. Typo3 generiert die Links falsch. und wie oben beschrieben bringt die Einstellung config.linkVars nichts, da auch bei übergeben eines Typewertes von z.B. 5 (also mit "index.php&type=5") die von T3 erzeugten Links diesen nicht beinhalten. Die links schaun be mir alle so aus: "test.123.0.html", auch wenn ich als typewert 5 übergebe...

onkelfusspilz ·

Ok,

also ich kann im Moment nicht nachvollziehen wo der Fehler liegt. Von der Logik sollte simulateStatic config.linkVars nicht deaktivieren.

Hast Du die aktuelle Typo3 version bzw. sind Deine Extensions auch alle up2date?

Hat vielleicht sonst jemand eine Idee dazu?

Ich hätte lediglich einen eventuellen Ausweg: Hast Du schonmal dran gedacht die Extension realURL zu verwenden? Ich habe selbst nur über die Extension gelesen und weiss auch nicht wie da type-Werte behandelt werden, aber vielleicht führt das weiter.