0 votes
in SoSci Survey (dt.) by s328660 (120 points)

Hallo,

wir betreiben SoSci in einem Openshift-Cluster und haben das Problem, dass nach jedem POD-Restart die Lizenzinformation verloren geht. Unter Umständen wird irgendeine Laufzeitinformation im Zuge des Festlegen des Lizenzschlüssels gespeichert, die bei einem Restart verloren geht. Ist das möglich? Der /system/ Ordner liegt auf einem externen Share, das bei einem POD-Restart lediglich neu gemountet wird. Ist es korrekt, dass der Lizenzschlüssel aus dem File /system/config.php ausgelesen wird? Falls ja, warum ist ein Restart dann ein Problem?

Danke!

1 Answer

0 votes
by SoSci Survey (378k points)

Die Lizenzinformationen werden in der /system/config.php unter folgendem Schlüssel abgelegt:

$GLOBALS['oFb']['licence data']

Die Lizenzinformationen sind dabei an eine Server-URL gekoppelt, aber diese steht ja ebenfalls in der Datei unter folgendem Schlüssel und sollte sich auch nicht ändern:

$GLOBALS['oFb']['server url']

PHP ist in der Apache-Standard-Konfiguration darauf ausgelegt, dass für jede einzelne Anfrage eine neue Instanz gestartet wird. Aufgrund einer höheren Effizienz rate ich dringend zu PHP-FPM, aber im Prinzip ist PHP stateless. In SoSci Survey wird der "state" durch die Informationen in der Datenbank, in system/, files/ und in den Projektverzeichnissen definiert. Daher sehe ich keine Gründe dafür, weshalb bei einem Restart die Lizenz verloren gehen sollte.

Schreiben Sie doch einmal folgendes in eine neue Datei test.php im Hauptverzeichnis und prüfen Sie, ob die Ausgabe sich durch den Neustart ändert.

<?php
chdir(__DIR__.'/admin');
require '../inc/include.admin.php';
var_dump($GLOBALS['oFb']['server url']);
var_dump(base64_decode($GLOBALS['oFb']['licence data']));
ago by s357485 (130 points)
Die Ausgabe der 'server url' ist korrekt. Bei der Ausgabe der 'licence data' werden kryptische Zeichen ausgegeben. Eventuell habe ich für die 'licence data' den falschen Wert übernommen. Welter Teil der Lizenz sollte das sein? Der im Fall von pv.at 6-stellige Key?
ago by SoSci Survey (378k points)
Die 'licence data' sollte ein längerer String im JSON-Format sein - dieser String wird bei der Lizenzaktivierung für den spezifischen Server erstellt und dann in 'licence data' in der config.sys abgelegt.

Der wesentliche Punkt ist: Ändert sich dieser String zwischen dem Zeitpunkt, wo alles funktioniert, und dem Zeitpunkt nach dem Neustart, wenn es nicht mehr funktioniert?

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...