stefkey hat geschrieben:Es ist Advanced Mod Rewrite Plugin 0.5.5 und Contenido 4.8.12
...
Das Navigationsmodul ist zielich alt:
...
Kann es doch mit de Naimodul zusammenhängen Aber ohne AMR geht es doch...
...
Am Navigationsmodul liegt es bestimmt nicht, aber wie schon von idea-tec angemerkt, kann es hilfreich sein, wenn du die Links um die idartlang erweiterst. Das geht folgendermaßen:
1. Überall in der Modulausgabe das Vorkommen von
Code: Alles auswählen
$navitems[$db->f("idcat")] = array("idcat" => $db->f("idcat"),
"name" => $db->f("name"),
"public" => $db->f("public"),
"idcatlang" => $db->f("idcatlang"),
"target" => $target);
um "idartlang" wie folgt erweitern
Code: Alles auswählen
$navitems[$db->f("idcat")] = array("idcat" => $db->f("idcat"),
"name" => $db->f("name"),
"public" => $db->f("public"),
"idcatlang" => $db->f("idcatlang"),
"idartlang" => $db2->f("idartlang"),
"target" => $target);
2. Überall, wo die URL generiert wird, den Code
Code: Alles auswählen
$tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat']));
um "idartlang" wie folgt erweitern
Code: Alles auswählen
$tpl->set('d', 'HREF', $sess->url('front_content.php?idcat='.$data['idcat'].'&idartlang='.$data['idartlang']));
stefkey hat geschrieben:
...Außerdem folgendes funktioniert auch nicht:
In den Mandanteneinstellungen folgender Eintrag:
Typ: frontend.no_outputbuffer
Name: idart
Wert: 415
...
Versuche mal in der front_content.php herauszufinden, in welchen Zweig die Verarbeitung des Codes läuft. Ändere an Zeile 977 die folgenden Zeilen
Code: Alles auswählen
$aExclude = explode(',', getEffectiveSetting('frontend.no_outputbuffer', 'idart', ''));
if (in_array(Contenido_Security::toInteger($idart), $aExclude)) {
eval ("?>\n".$code."\n<?php\n");
} else {
in
Code: Alles auswählen
$aExclude = explode(',', getEffectiveSetting('frontend.no_outputbuffer', 'idart', ''));
if (in_array(Contenido_Security::toInteger($idart), $aExclude)) {
die('ausgabe ohne pufferung');
eval ("?>\n".$code."\n<?php\n");
} else {
die('ausgabe mit pufferung');
Bei idart 415 sollte "ausgabe ohne pufferung". Das klappt natürlich nur, wenn der Artikel ausgegeben werden kann (zugriff erlaubt, ist online und hat keinen Redirect in Artikeleigenschaften). Wenn nichts von beidem ausgegeben wird, dann kommt es gar nicht zur Ausgabe des Artikels.
stefkey hat geschrieben:...
Oder in der AMRConfig:
/>>>front_content.php?idcat=221
(Da sollte doch bei Aufruf von sub.domain.de der Startartikel von Kategorie 221 erscheinen?!? )
...
Handelt es sich um eine Mehrmandantensystem, dann sollte man noch die ID des Mandanten angeben. Dabei sollte sub.domain.de auch als Webadresse des Mandanten eingestellt sein.
Handelt es sich um ein Mehrsprachensystem, sollte da die id der default Sprache angegeben werden.
Leitet das Apache mod_rewite Modul überhaupt Anfragen auf den Webbroot von sub.domain.de an front_content.php im Madantenverzeichnis?
Wenn Anfragen auf sub.domain.de von einer index.php per header-Directive an die front_content.php weitergeleitet werden, kann dann die Konfiguration />>>front_content.php?idcat=221 nicht greifen.
Das kannst du auch debuggen, ändere in der Datei contenido/plugins/mod_rewrite/classes/class.modrewritecontroller.php die Zeile 254
in
Code: Alles auswählen
if ($secondCall == true) {
echo '<pre>this path: ' . $aUrlComponents['path'] . '</pre>';
echo '<pre> existing routings: ' . print_r(parent::getConfig('routing'), true) . '</pre>';
Dabei sollte beim Aufruf von sub.domain.de in der Ausgabe der Wert neben "this path" in der ausgegebenen Routingkonfiguration (nach "existing routings") vorkommen.
So viele Probleme auf einmal gab es schon lange nicht mehr. Wie sieht denn deine AMR-Konfiguration aus, gibt es da bei dem Projekt außergewöhnliche Einstellungen?
Gruß
xmurrix