Datenauskunft - PDF-Export für self-hoster auf gehostetem Webspace



  • Hallo,
    mit dem DSGVO Update ist ja jetzt theoretisch die Möglichkeit mit gekommen, die Daten eines Nutzers als PDF zu exportieren. Dafür wird ja bekanntermaßen Phantom.JS verwendet.
    Da das so seine Probleme hat und bei einigen Selfhostern wohl nicht funktionieren wird (uns eingeschlossen), fände ich es gut, wenn man die Daten entweder alternativ noch als csv exportieren könnte (würde das der DSGVO genügen?) oder alternativ eine PHP Lösung, wie Tcpdf oder mpdf verwendet würde.

    Ich bin momentan am überlegen, wie ich das bei uns am schnellsten / schmerzfreisten umsetzen kann, weil Phantom läuft nicht... wäre auch offen dafür eine Tcpdf / mpdf Lösung zu contributen..

    Viele Grüße,
    Joachim



  • Das unterstreiche ich ganz dick!!!! Es kommen immer mehr Feature dazu die den PDF-Export nutzen(Serienbrief, Programme Export, Datenauskunft,...). Auch mich schmerzt es fasst zu sehen, dass man als Selbsthoster hinten runterfällt.


  • ChurchToolsMitarbeiter

    Bei welchem Anbieter seid ihr? Warum könnt ihr den Phantomjs dort nicht nutzen?



  • Wir sind bei all-inkl. Diese lehnen generell eine solche Installation ab. Einige Auszüge aus der Diskussion:

    Dies hat technische Gründe.
    Die von Ihnen genannte Software gehört nicht gerade zum Standardumfang eines Servers mit shared hosting und setzt auf systemnahen Programmen auf, die ausserhalb des eigentlichen Webservers laufen.
    Für uns sind diesbezüglich weder Abhängigkeiten, noch Risiken, noch ein möglicher Performanceverlust des Servers abschätzbar, wenn wir derartige Programme für alle Kunden und alle Scripte verfügbar machen.

    Auch sind Server mit shared hosting nicht dafür vorgesehen, Software im Betriebssystem nach Kundenwünschen zu installieren.

    Trotzdem können wir Ihnen leider keine andere Auskunft erteilen. Die Nutzung von Phantomjs ist bei uns im SharedHosting nicht möglich. Wir bitten um Ihr Verständnis.


  • admin

    ja ... shared hosting ist natürlich ein Problem. Vielleicht dann doch ein kleiner virtueller Server? ;-)



  • Ebenfalls all-inkl hier.
    Phantomjs kann man schon manuell hochladen und es wird auch gestartet stürzt aber ab, ebenso wkhtmltopdf.
    Ich bin mir nicht sicher, ob es daran liegt, dass eine lib fehlt oder ob es nicht eine Arbeitsspeicher Begrenzung für Programme, die nicht zum Webserver gehören, gibt..

    @Andy die meisten Anforderungen für Webapps, wie CT, werden bei geringem Preis und Verwaltungsaufwand von shared hosting bestens erfüllt. Ebenso unsere Gründe fürs Self-Hosting. Nur eben nicht PhantomJS, o.ä.



  • @fodinabor Hast du die korrekte Binary verwendet? Wenn du ermitteln kannst, welches OS euer Webhoster verwendet, kannst du explizit die für das betreffende OS kompilierte (oder eine kompatible) Binary zu phantomjs herunterladen und diese im Ordner /bin platzieren. Damit sollte dies auch auf einem Shared Hosting klappen.

    Achtung: Beachte hier aber auch die AGB's des Hosters. Es kann sein, dass die Verwendung eigener Binaries generell untersagt ist.



  • @seetalchile ja, die Info habe ich, ich habe auch die offizielle Version vom Ubuntu package repo versucht (da die nicht statisch kompiliert ist und QT nicht installiert ist funktioniert das natürlich auch nicht...)

    davon abgesehen glaube ich, dass der Aufwand hier einen Workaround zu finden fast größer sein dürfte als die Unterstützung von einer PHP lib zu implementieren..


  • admin

    @fodinabor sagte in Datenauskunft - PDF-Export für self-hoster auf gehostetem Webspace:

    Ebenso unsere Gründe fürs Self-Hosting.

    Wir hatten uns vor einigen Jahren vom shared hosting verabschiedet, weil die Performance (und die Flexibilität) so miserabel war. Mag aber auch am Anbieter gelegen haben ...

    CT hosten wir jetzt direkt bei CT und alle Webseiten, die Nextcloud, LimeSurvey usw. auf einem virtuellen Server.



  • Okay, ich habe das jetzt mit nem winzigen script für uns gelöst.
    Wer Interesse hat:
    https://next.egp-jugend.de/index.php/s/otyGasgsur1Eg6t

    Infos:

    • PHP Version 5.6+ vorausgesetzt (der Pfad zu php56, php70, php71 muss ggf. in der Datei phantomjs angepasst werden - Standard ist 7.1)
    • Installation: kopiere die Dateien aus der zip in den bin Ordner, wo sonst die phantomjs Datei liegen müsste, die phantomjs muss für den webuser ausführbar sein, ansonsten gerne wieder eine .htaccess mit dem Inhalt Deny from all anlegen.
    • mpdf muss via composer installiert werden (dafür mit installiertem composer in dem bin Ordner composer install ausführen)

    Bei Rückfragen gebe ich gerne etwas Support ;-)



  • @fodinabor sagte in Datenauskunft - PDF-Export für self-hoster auf gehostetem Webspace:

    Okay, ich habe das jetzt mit nem winzigen script für uns gelöst.
    Wer Interesse hat:
    https://next.egp-jugend.de/index.php/s/otyGasgsur1Eg6t

    Infos:

    • PHP Version 5.6+ vorausgesetzt (der Pfad zu php56, php70, php71 muss ggf. in der Datei phantomjs angepasst werden - Standard ist 7.1)
    • Installation: kopiere die Dateien aus der zip in den bin Ordner, wo sonst die phantomjs Datei liegen müsste, die phantomjs muss für den webuser ausführbar sein, ansonsten gerne wieder eine .htaccess mit dem Inhalt Deny from all anlegen.
    • mpdf muss via composer installiert werden (dafür mit installiertem composer in dem bin Ordner composer install ausführen)

    Bei Rückfragen gebe ich gerne etwas Support ;-)

    Ich kann hier gar nicht oft genug auf "Gefällt mir" drücken. Das ist ja der Wahnsinn!!! Vielen Dank für die Mühe und die tolle Umsetzung. Wenn das jetzt noch zum Standard in CT werden würde... Wow!



  • Wir sind bei DomainFactory und da habe ich das gleiche Problem mit PDF erstellen.
    Wie funktioniert das mit dem Composer und der mpdf installation?



  • @benib Was genau ist unklar? Wo bleibst Du stecken?



  • @joe999 brauche ich dazu einen ssh Zugang oder geht das auch ohne?



  • Für den MPDF via Composer wirst Du SSH benötigen, ja.



  • Alternativ kannst du auch lokal MPDF via composer installieren und den vendor Ordner hochladen....



  • Das hat jetzt schonmal funktioniert.
    Leider kann ich immernoch keine PDF exportieren.

    Bei der Datenauskunft kommt: Creating Pdf from Html failed.
    Beim Kalender PDF export kommt: Fehler aufgetreten in churchcal. Could not execute phantomjs, Error code: 127

    Im Logfile kommt einmal:
    ErrorHandler: Creating Pdf from Html failed. RequestId: 5b38d4b8f2548 Module: Param:
    und: Error in AbstractModule:call - Could not execute phantomjs, Error code: 127

    Okay, bei all-inkl. zum testen funktioniert es. bei domainfactory leider noch nicht. Das ist schonmal was.



  • hast du der Datei Ausführungsrechte hinzugefügt?
    Also z.b. 755?
    zum testen setz die Rechte mal auf 777 (und änders danach bitte unbedingt wieder).
    Kann sein, dass der Webuser nur in der besitzenden Gruppe ist o.ä...



  • Ja hab ich.
    Es geht auch, wenn ich die Zeile
    /usr/bin/php71 bin/pdfgen.php $2 $3 $4 $5
    lösche. Nur dann wird ja auch nichts erstellt.
    Vermutlich fehlt die Berechtigung die php71 auszuführen oder die gibt es dort nicht.
    PHP 7.1.15 läuft.



  • ja.. das kann gut sein.. versuch mal einfach nur php, /usr/bin/php71 oder nur php71.. weiß leider nicht mehr, wie ich den passenden Pfad gefunden hatte -,-



  • Hab noch etwas rumprobiert. Damit funkionierts:
    /usr/local/bin/php7-71LATEST-CLI

    Danke.


Anmelden zum Antworten
 

Es scheint als hättest du die Verbindung zu ChurchTools Forum verloren, bitte warte während wir versuchen sie wieder aufzubauen.