Database Configuration Error

MarkusPortugall
Beiträge: 11
Registriert: Mo 8. Aug 2016, 17:21

Database Configuration Error

Beitrag von MarkusPortugall » Mo 8. Aug 2016, 17:47

Hallo Alle Zusammen!

Ich habe folgendes Problem mit BlackCat.
Wenn ich die Dateien auf den Server hochlade, und dort installieren will, dann tritt nach dem Menüpunkt "Postcheck" ein Fehler auf.
Den Support habe ich schon kontaktiert, allerdings brachten unsere Vermutungen keinen Erfolg. (Lob an die schnelle Antwort)
Nun soll ich einen Thread im Forum eröffnen, da das Problem anscheinend kein Einzelfall ist.

Es gab schon einen ähnlichen Thread, indem es geholfen hat, die index.php im Verzeichnis
.../framework/CAT/Helper/DB zu entfernen. Dies war hier aber leider nicht der Fall.
(http://forum.blackcat-cms.org/viewtopic.php?f=5&t=505)

In der Log-Datei (temp/logs) stand folgendes:
2016-08-08 18:12:07 - CRIT --> [printError()] Fatal error with message [Database configuration error] emitted in [DB.php] line [60] method [connect] [ Object.php:(209) ]

Die Tabellen auf der Datenbank wurden auch noch nicht angelegt.
Das Backend über /backend/ kann auch nicht aufgerufen werden.

Sonstige Informationen:
Server-Betriebssystem: Linux
PHP-Version: 5.4.45.

Kann vielleicht jemand helfen? :cry:
Oder hat jemand dasselbe Problem?

Mit freundlichen Grüßen
MarkusPortugall

Benutzeravatar
shadowcat
Administrator
Beiträge: 4570
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: Database Configuration Error

Beitrag von shadowcat » Mo 8. Aug 2016, 18:31

Ähm, Du hast aber schon den Installer aufgerufen, oder? :lol:

Gibt es dort, wo Du die index.php gelöscht hast, eine Datei mit <komischerlangername>.bc.php? Wenn nicht, ist das der Grund.
My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

Benutzeravatar
shadowcat
Administrator
Beiträge: 4570
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: Database Configuration Error

Beitrag von shadowcat » Mo 8. Aug 2016, 18:33

Zur Erklärung, der Fehler tritt auf, wenn

* es eine config.php gibt (also nach der Installation) UND
* es _keine_ Datei <komischername>.bc.php gibt oder diese nicht gefunden wird (die Sache mit der index.php)
My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

Benutzeravatar
creativecat
Beiträge: 1067
Registriert: Mi 6. Feb 2013, 12:41
Kontaktdaten:

Re: Database Configuration Error

Beitrag von creativecat » Mo 8. Aug 2016, 22:28

Jetzt klinke ich mich mal kurz ein:
Laut E-Mail existiert die Datei <komischername>.bc.php ;)

Diese sollte die Form haben:

Code: Alles auswählen

;<?php
;die(); // For further security
;/*

[CAT_DB]
TYPE=[[zB. mysql]]
HOST=[[zB. localhost]]
PORT=[[zB. 3306]]
USERNAME=[[USERNAME-nicht veröffentlichen!]]
PASSWORD="[[PASSWORD-nicht veröffentlichen!]]"
NAME=[[Datenbankname-nicht veröffentlichen!]]

;*/
;?>
Hat sie die Form, oder wurde hier eventuell (vielleicht aufgrund seltsamer Userrechte?!?) nichts geschrieben...

MarkusPortugall
Beiträge: 11
Registriert: Mo 8. Aug 2016, 17:21

Re: Database Configuration Error

Beitrag von MarkusPortugall » Di 9. Aug 2016, 09:40

1. Ja, natürlich habe ich die Installation aufgerufen
2. Eine Config.php gibt es noch. Allerdings ist die Installation ja auch noch nicht zu ende geführt.
3. Diese "KomischerName.php" existiert und hat genau die Form, wie es creativecat beschrieben hat:
creativecat hat geschrieben:;<?php
;die(); // For further security
;/*

[CAT_DB]
TYPE=[[zB. mysql]]
HOST=[[zB. localhost]]
PORT=[[zB. 3306]]
USERNAME=[[USERNAME-nicht veröffentlichen!]]
PASSWORD="[[PASSWORD-nicht veröffentlichen!]]"
NAME=[[Datenbankname-nicht veröffentlichen!]]

;*/
;?>

Benutzeravatar
shadowcat
Administrator
Beiträge: 4570
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: Database Configuration Error

Beitrag von shadowcat » Di 9. Aug 2016, 10:01

Dann prüfe bitte mal die Dateisystemrechte auf diese Datei. Der Webserver-Prozeß muß Leserechte auf die Datei sowie das Verzeichnis haben. Sonst findet er sie entweder erst gar nicht, oder er kann sie nicht zum Lesen öffnen.

@creativecat: Hatten wir da nicht schon mal was?
My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

Benutzeravatar
creativecat
Beiträge: 1067
Registriert: Mi 6. Feb 2013, 12:41
Kontaktdaten:

Re: Database Configuration Error

Beitrag von creativecat » Di 9. Aug 2016, 10:19

shadowcat hat geschrieben:@creativecat: Hatten wir da nicht schon mal was?
Ich kann mich da an nichts erinnern. Nur daran, dass die index.php gelegentlich Probleme gemacht hat (wobei ich da aktuell den Verdacht habe, dass dies der Fall sein könnte, wenn der Name der Zufallsdatei mit einem Buchstaben nach "i" anfängt... konnte ich aber auch noch nicht rekonstruieren).

MarkusPortugall
Beiträge: 11
Registriert: Mo 8. Aug 2016, 17:21

Re: Database Configuration Error

Beitrag von MarkusPortugall » Di 9. Aug 2016, 10:50

Also die Berechtigungen für die Datei liegen auf 644.
Also Lesen überall, schreiben nur für Besitzer und Ausführen garnicht.

Benutzeravatar
shadowcat
Administrator
Beiträge: 4570
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: Database Configuration Error

Beitrag von shadowcat » Di 9. Aug 2016, 11:02

Und das Verzeichnis? Auch?
My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

Benutzeravatar
shadowcat
Administrator
Beiträge: 4570
Registriert: Di 5. Feb 2013, 10:36
Kontaktdaten:

Re: Database Configuration Error

Beitrag von shadowcat » Di 9. Aug 2016, 11:09

Die Meldung kommt von folgender Stelle in der Datei ./framework/CAT/Helper/DB.php (Zeile 390ff):

Code: Alles auswählen

            // read the file
            $configuration = parse_ini_file($file);
            if(!is_array($configuration) || !count($configuration))
            {
                CAT_Object::printFatalError('Database configuration error');
            }
Durch folgende Änderung könnten wir evtl. Näheres herausfinden:

Code: Alles auswählen

echo "FILE: $file<br />";
            // read the file
            $configuration = parse_ini_file($file);
echo "is_array -", is_array($configuration), "-<br />";
echo "count -", count($configuration), "-<br />";
            if(!is_array($configuration) || !count($configuration))
            {
                CAT_Object::printFatalError('Database configuration error');
            }
Bitte den Dateipfad, der beim ersten "echo" herauskommt, NICHT hier im Forum posten! Nur checken, ob der stimmt!

Die Ausgabe sollten in etwa so aussehen:

FILE: <Pfad>
is_array -1-
count -X-

Wobei X eine Zahl größer 0 sein sollte.
My software never has bugs, it just develops random features.
BC1: PHP 5.5.11 (cli), mySQL 5.6.16 with 'strict' enabled, Apache 2.4.9
BC2: PHP 7.2.7, mariaDB 10.2.13, no Apache

Antworten