Seite 1 von 1

AMR Plugin mr_preprocessedPageError=1; error=4

Verfasst: Mi 9. Jul 2014, 13:42
von Schertle
Beim Test des AMR Plugins bekomme ich bei 19 Urls

Aufgelöste Daten: mr_preprocessedPageError=1; error=4

Hier ein Beispiel:
Home :: home-weiterleitung
Builder Eingang: front_content.php?idart=164&idcat=142&idcatart=206&idartlang=264&foo=bar
Builder Ausgang: /1/1/home/home-weiterleitung.html?foo=bar
Aufgelöste URL:
Aufgelöse-Fehler: article
Aufgelöste Daten: mr_preprocessedPageError=1; error=4

Contenido 4.8.20 integriertes AMR Plugin

Re: AMR Plugin mr_preprocessedPageError=1; error=4

Verfasst: Fr 11. Jul 2014, 09:55
von xmurrix
Hallo Schertle,

laut der Ausgabe scheint das Problem beim Auflösen des Artikels zu liegen.

Entweder wird der Artikel mit dem Alias nicht gefunden oder es ist offline oder nicht öffentlich zugänglich.
Du kannst die Funktion _setIdart in der contenido/plugins/mod_rewrite/classes/class.modrewritecontroller.php genauer unter die Lupe nehmen, um herauszufinden, was genau das Problem ist.
...Builder Eingang: front_content.php?idart=164&idcat=142&idcatart=206&idartlang=264&foo=bar...
Es reicht vollkommen aus, eines davon anzugeben, also idart, idcat, idcatart, idartlang. Man braucht nicht alles...

Gruß
xmurrix

Re: AMR Plugin mr_preprocessedPageError=1; error=4

Verfasst: Fr 11. Jul 2014, 13:31
von Schertle
Aliase sind vorhanden und Artiekl sind auch nicht offline.
Nachdem ich den Test nur mit dem Parameter idcat laufen ließ, bekam ich keine Fehler mehr.
Aber bei allen anderen Kombinationen gibt es Fehler.

Re: AMR Plugin mr_preprocessedPageError=1; error=4

Verfasst: Di 22. Jul 2014, 10:41
von rethus
Ich habe derzeit das gleiche Phänomen und konnte das Problem weiter eingrenzen:

Es handelt sich um eine mehrsprachige Website. Wähle ich in AMR in der Zeile "Soll die Sprache mit in der URL erscheinen (für Mehrsprachsysteme unabdingbar)?" nur folgendes aus:

Code: Alles auswählen

Sprache an die URL voranstellen
Erscheinen die von Schertle beschriebenen Fehler.

Wähle ich jedoch zusätzlich die darunter befindliche Checkbox:

Code: Alles auswählen

Name der Sprache anstatt die Id verwenden
aus, funktioniert die Webpage und der Test.

Wie es scheint, fehlt hier noch eine Anpassung in der .htaccess, die dann letztendlich die Sprach_ID interpretieren kann.

Meine htaccess (restriktive Version im Contendio-Root-Verzeichnis [also oberhalb des Mandanten = Docroot der Webpage]) hat diesen Inhalt:

Code: Alles auswählen

 #Config aus:
# data/config/staging
# cms/data/config/staging

SetEnv CON_ENVIRONMENT live




################################################################################
# CONTENIDO AMR plugin restrictive rewrite rules set.
#
# Contains strict rules, each rewrite exclusion must be set manually.
# - Exclude requests to directories usage/, contenido/, setup/, cms/upload/
# - Exclude requests to cms/front_content.php
# - Pass thru requests to common ressources (pictures, movies, js, css, pdf)
#
# @version    0.0.1
# @author     Murat Purc <murat@purc.de>
# @copyright  four for business AG <www.4fb.de>
# @license    http://www.contenido.org/license/LIZENZ.txt
# @link       http://www.4fb.de
# @link       http://www.contenido.org
# @since      file available since CONTENIDO release 4.9.0
#
# $Id: htaccess_restrictive.txt 3811 2012-12-19 22:22:00Z xmurrix $
################################################################################


# Enable following lines to run PHP5 on 1und1.de (1and1.com)
#AddType x-mapp-php5 .php
#AddHandler x-mapp-php5 .php

<IfModule mod_rewrite.c>

    # Enable rewrite engine
    RewriteEngine on


    # Specify a base URL-path for the rules
    RewriteBase /cms


    # Catch some common exploits in query string to get rid of them.
    # NOTE: Conditions to prevent protocols (ftp, http[s]) in query string could
    #       be a disadvantage in some cases.
    RewriteCond %{QUERY_STRING} contenido_path=.*$  [NC,OR]
    RewriteCond %{QUERY_STRING} cfg\[path\]=.*$  [NC,OR]
    RewriteCond %{QUERY_STRING} _PHPLIB\[libdir\]=.*$  [NC,OR]
    RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
    RewriteCond %{QUERY_STRING} ftp://.*$  [NC,OR]
    RewriteCond %{QUERY_STRING} http[s]*://.*$ [NC]
    RewriteRule ^.* - [F,L]  # all matching conditions from above will end in nirvana


    # Exclude some files and directories from rewriting
    RewriteRule ^usage/.*$ - [L]
    RewriteRule ^contenido/.*$ - [L]
    RewriteRule ^setup/.*$ - [L]
    RewriteRule ^cms/upload/.*$ - [L]
    RewriteRule ^cms/test/.*$ - [L]
    RewriteRule ^cms/front_content.php.*$ - [L]


    # Exclude common extensions from rewriting and pass remaining requests to
    # front_content.php.
    RewriteRule !\.(avi|css|doc|flv|gif|gzip|ico|jpeg|jpg|js|mov|mp3|pdf|png|ppt|rar|swf|txt|wav|wmv|xml|zip)$ front_content.php [NC,QSA,L]

</IfModule>


# Some rules to compress files.
# NOTE: Following settings are not mod rewrite specific, but enabling mod_deflate
#       for some file types can help to reduce bandwith.
<IfModule mod_deflate.c>
    <FilesMatch "\.(js|css|html|htm|php|xml)$">
        SetOutputFilter DEFLATE
    </FilesMatch>
</IfModule>

Im /cms-Folder liegt keine htaccess mehr.
Hat jemand einen Tipp, wo ich das letztendliche Rewriting finde?

Re: AMR Plugin mr_preprocessedPageError=1; error=4

Verfasst: Di 10. Mai 2016, 20:58
von bodil
Ich konnte das o. g. Problem in meinem Fall lösen, in dem ich den synchronisierten Artikel inkl. Kategorie gelöscht und neu synchronisiert habe. Wichtig: übersetzte Inhalte irgendwo zwischenspeichern ...