Ab und an leere Seiten

cc13
cc13's picture

Joined: 2002-08-26
Posts: 30
Posted: Mon, 2007-08-27 09:54

Hallo zusammen,

alle paar Wochen, manchmal auch schon nach einigen Tagen passiert es, dass mir meine Gallery (Version 2.2.2) nur noch leere Seiten liefert.

Durch eine Suche hier im Forum bin ich darauf gestossen, den Debug-Modes (buffered) zu aktivieren. Wenn ich das einstelle kommt folgende Meldung:

Quote:
Warning: requireonce(xxx/modules/core/classes/../../../<?php $data = unserialize('a:34:{s:21:"permissions.directory";s:3:"755";s:16:"permissions.file";s:3:"644";s:23:"language.useBrowserPref";s:1:"0";s:19:"exec.expectedStatus";s:1:"0";s:15:"default.orderBy";s:17:"creationTimestamp";s:22:"default.orderDirection";s:4:"desc";s:13:"default.theme";s:6:"matrix";s:16:"default.language";s:5:"de_DE";s:16:"session.lifetime";s:7:"1814400";s:25:"session.inactivityTimeout";s:6:"604800";s:11:"misc.markup";s:6:"bbcode";s:11:"cookie.path";s:0:"";s:15:"id.allUserGroup";s:1:"1";s:13:"id.adminGroup";s:1:"2";s:17:"id.everybodyGroup";s:1:"3";s:16:"id.anonymousUser";s:1:"4";s:12:"id.root in xxx/modules/core/classes/GalleryCoreApi.class on line 2717

Fatal error: requireonce() [function.require]: Failed opening required 'xxx/modules/core/classes/../../../<?php $data = unserialize('a:34:{s:21:"permissions.directory";s:3:"755";s:16:"permissions.file";s:3:"644";s:23:"language.useBrowserPref";s:1:"0";s:19:"exec.expectedStatus";s:1:"0";s:15:"default.orderBy";s:17:"creationTimestamp";s:22:"default.orderDirection";s:4:"desc";s:13:"default.theme";s:6:"matrix";s:16:"default.language";s:5:"de_DE";s:16:"session.lifetime";s:7:"1814400";s:25:"session.inactivityTimeout";s:6:"604800";s:11:"misc.markup";s:6:"bbcode";s:11:"cookie.path";s:0:"";s:15:"id.allUserGroup";s:1:"1";s:13:"id.adminGroup";s:1:"2";s:17:"id.everybodyGroup";s:1:" in xxx/modules/core/classes/GalleryCoreApi.class on line 2717

Die "xxx" stellen meinen Pfad beim Provider dar und sind jetzt nur aus Datenschutzgründen "ausgegraut". Wenn ich mir Zeile 2717 in der GalleryCoreApi.class anschaue, steht dort folgendes:

Quote:
require_once(dirname(__FILE__) . '/../../../' . &file);

Auch eine komplette Neuinstallation der Gallery-Software in ein neues Verzeichnis bringt nichts, der Fehler kommt trotzdem immer wieder.

Bisher habe ich mir damit geholfen, das Upgrade per "xxx/upgrade" erneut auszuführen, alle Schritte zu durchlaufen und schon bekomme ich wieder meine Albumseiten zu sehen. Bis die Gallery das nächste Mal leere Seite n bringt.

Meinen Provider darauf angesprochen, meinte er, es wurde nichts an den betreffenden Dateien geändert.

Hat jemand eine Idee, wo ich noch suchen könnte?

gruss
cc13

 
valiant

Joined: 2003-01-04
Posts: 32509
Posted: Wed, 2007-08-29 01:58

ohne stack trace hilft die fehlermeldung nicht viel.

du musst den code ändern, um einen genaueren hinweis zu erhalten.

modules/core/classes/GalleryCoreApi.class

fine:

    function requireOnce($file, $skipBaseDirectoryDetection=false) {
	static $loaded;
	if (!isset($loaded[$file])) {
	    $loaded[$file] = 1;
	    if (strpos($file, '..') !== false) {
		return;
	    }
	    require_once(dirname(__FILE__) . '/../../../' . $file);
	}
    }

ersetzen mit:

    function requireOnce($file, $skipBaseDirectoryDetection=false) {
	static $loaded;
	if (!isset($loaded[$file])) {
if (!file_exists(dirname(__FILE__) . '/../../../' . $file)) {
    $error = GalleryCoreApi::error(GALLERY_ERROR);
    print $error->getAsHtml();
}

	    $loaded[$file] = 1;
	    if (strpos($file, '..') !== false) {
		return;
	    }
	    require_once(dirname(__FILE__) . '/../../../' . $file);
	}
    }

--------------
Documentation: Support / Troubleshooting | Installation, Upgrade, Configuration and Usage

 
cc13
cc13's picture

Joined: 2002-08-26
Posts: 30
Posted: Sun, 2007-09-02 08:17

Hallo Valiant,

ich habe deinen Code eingefügt und bekomme nun folgende Fehlermeldung:

Quote:
Error (GALLERY_ERROR)
in modules/core/classes/GalleryCoreApi.class at line 2714 (gallerycoreapi::error)
in modules/core/classes/GalleryDataCache.class at line 288 (gallerycoreapi::requireonce)
in modules/core/classes/helpers/GalleryPluginHelper_simple.class at line 287 (gallerydatacache::getfromdisk)
in modules/core/classes/helpers/GalleryPluginHelper_simple.class at line 222 (gallerypluginhelper_simple::_fetchallparameters)
in modules/core/classes/GalleryCoreApi.class at line 238 (gallerypluginhelper_simple::getparameter)
in modules/core/classes/GalleryPlatform.class at line 1038 (gallerycoreapi::getpluginparameter)
in modules/core/classes/GalleryPlatform.class at line 356 (unixplatform::_loadpermissionpreferences)
in modules/core/classes/GalleryDataCache.class at line 361 (unixplatform::atomicwrite)
in modules/core/classes/helpers/GalleryFactoryHelper_simple.class at line 93 (gallerydatacache::puttodisk)
in modules/core/classes/helpers/GalleryFactoryHelper_simple.class at line 141 (galleryfactoryhelper_simple::_getfactorydata)
in modules/core/classes/GalleryCoreApi.class at line 126 (galleryfactoryhelper_simple::newinstance)
in init.inc at line 90 (gallerycoreapi::newfactoryinstance)
in main.php at line 76

 
cc13
cc13's picture

Joined: 2002-08-26
Posts: 30
Posted: Thu, 2007-09-27 08:27

Also, so langsam habe ich keine Lust mehr. Gestern habe ich die Version 2.2.3 in ein neues Verzeichnis in meinem Webspace kopiert, ohne irgendwelche "Altlasten" einer früheren Version zu übernehmen. Das einzige, was gleich blieb, ist der Ordner "g2data" mit den Bildern. Dieser liegt allerdings ausserhalb der Gallery-Installatoin, wie vom Install-Script empfohlen. Und heute war die Startseite meiner Gallery wieder leer und konnte erst durch den Start des Upgrade-Scripts wiedererweckt werden. :-(