Contao-Camp 2024
Ergebnis 1 bis 16 von 16

Thema: Problem mit Symlinks & Datei-Uploads

  1. #1
    Contao-Nutzer
    Registriert seit
    10.11.2016.
    Beiträge
    21

    Standard Problem mit Symlinks & Datei-Uploads

    Hallo zusammen,

    wieder mal aus der Reihe "merkwürdige Probleme": die Seite eines Kundens (Contao 4.43) wird bei einem kleinen Provider gehosted. Die Installation etc. hat einwandfrei funktioniert und beim Contao-Check 12.0 ist alles grün (naja, außer dass Contao 2.x nicht installiert werden kann).

    Aber irgendwo ist noch der Wurm drin, denn es gibt folgende Probleme:

    Datei-Uploads im Formular
    Die Anhänge (zum Beispiel PDF) werden als E-Mail-Anhang übermittelt, allerdings lassen sie sich nicht öffnen. "Adobe Acrobat konnte "xxx.pdf" nicht öffnen, da entweder der Dateityp nicht unterstützt wird oder die Datei beschädigt ist (z. B. eine fehlerhaft dekodierte E-Mail-Anlage).".

    Symlinks neu erstellen
    Beim versucht erscheint diese Meldung:
    Internal Server Error
    Was ist das Problem?
    Failed to remove file "/home/410k1/public_html/contao/web/files/theme/.public": unlink(/home/410k1/public_html/contao/web/files/theme/.public): Permission denied.

    Uploads über den Dateimanager
    Wird eine Datei - zum Beispiel ein Bild - über den Dateimanager hochgeladen, so ist sie im Frontend nicht sichtbar. Die Ursache ist, dass das Kopieren in das Verzeichnis contao/web/files nicht erfolgt. Werden die Dateien von contao/files per FTP manuell rüberkopiert, funktioniert es, aber das ist auf Dauer mühsam und keine Lösung.

    Ich vermute, dass das alles die gleiche Ursache hat und an den Einstellungen des Webhosters liegt - aber keine Ahnung, woran genau. Hat jemand von euch eine Idee, welche Servereinstellung dafür verantwortlich sein könnte? Ich habe Einblick in die phpinfo.php zum Gegenprüfen und der Serveradmin ist sehr bemüht zu helfen, kennt sich mit Contao aber nicht aus.

    Ich hoffe, die Frage gehört in diesen Forenbereich, andernfalls bitte einfach verschieben.

    Gruß
    patweb
    Geändert von patweb (19.09.2019 um 10:56 Uhr)

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.879
    Partner-ID
    10107

    Standard

    Zitat Zitat von patweb Beitrag anzeigen
    Symlinks neu erstellen
    Beim versucht erscheint diese Meldung:
    Internal Server Error
    Was ist das Problem?
    Failed to remove file "/home/410k1/public_html/contao/web/files/theme/.public": unlink(/home/410k1/public_html/contao/web/files/theme/.public): Permission denied.
    Überprüfe die Dateirechte.

  3. #3
    Contao-Nutzer
    Registriert seit
    10.11.2016.
    Beiträge
    21

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Überprüfe die Dateirechte.
    Daran hatte ich auch gedacht, aber selbst wenn ich .public im Verzeichnis contao/web/files/theme auf 777 stelle, klappt es nicht. Den Ordnern web, files und theme habe ich testweise 775 gegeben, aber das hat alles nix geändert.

  4. #4
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.060
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Welchem User gehören denn diese Verzeichnisse und unter welchem User führt der Webserver PHP aus? Ich gehe mal davon aus, Contao wurde mittels Contao-Manager auf dem Server installiert. Der kann also über seinen Konsolenprozess Dateien und Symlinks erstellen, sonst wäre die Installation nicht fehlerfrei durchgelaufen. Andererseits kann das offenbar der "normale" Webprozess nicht, der läuft also eventuell unter einem anderen User als der Konsolenprozess.

  5. #5
    Contao-Nutzer
    Registriert seit
    10.11.2016.
    Beiträge
    21

    Standard

    Zitat Zitat von tab Beitrag anzeigen
    Welchem User gehören denn diese Verzeichnisse und unter welchem User führt der Webserver PHP aus? Ich gehe mal davon aus, Contao wurde mittels Contao-Manager auf dem Server installiert. Der kann also über seinen Konsolenprozess Dateien und Symlinks erstellen, sonst wäre die Installation nicht fehlerfrei durchgelaufen. Andererseits kann das offenbar der "normale" Webprozess nicht, der läuft also eventuell unter einem anderen User als der Konsolenprozess.
    Danke für den Tipp, das gebe ich mal an den Serveradmin weiter!

  6. #6
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.879
    Partner-ID
    10107

    Standard

    Zitat Zitat von patweb Beitrag anzeigen
    Daran hatte ich auch gedacht, aber selbst wenn ich .public im Verzeichnis contao/web/files/theme auf 777 stelle, klappt es nicht. Den Ordnern web, files und theme habe ich testweise 775 gegeben, aber das hat alles nix geändert.
    Hast du auch alle Ordner Rechte überprüft?
    Geändert von Spooky (25.09.2019 um 09:25 Uhr)

  7. #7
    Contao-Nutzer
    Registriert seit
    10.11.2016.
    Beiträge
    21

    Standard

    Als Zwischenstand: es gab eine Trennung zwischen FTP- und Apache-User, der Tipp war goldrichtig. Der Upload über den Dateimanager als auch das Löschen der Symlinks funktioniert nun einwandfrei!

    Was weiterhin nicht klappt ist das Versenden der Dateiuploads über das Formular. Wenn ich einstelle, dass die Datei gespeichert wird, funktioniert es: das PDF landet auf dem Server und kann geöffnet werden. Aber sobald ein File als E-Mail-Anhang versandt wird, lässt sie sich nicht mehr öffnen, egal ob ich es mit PDF oder JPG teste.

    Es muss an irgendeiner Servereinstellung liegen, denn auf einem 1:1-Klon der Seite, der bei Domainfactory liegt, gibt es das Problem nicht.

    Habt ihr noch eine Idee, welche Konfiguration Formular-Uploads beim Versenden als E-Mail-Anhang "zerstören" könnte?

  8. #8
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.879
    Partner-ID
    10107

    Standard

    Meinst du die Standard E-Mail Versand Funktion des Contao Formulargenerators und das Upload Feld des Formulargenerators? In der Kombination wird normalerweise nur ein Link in der E-Mail eingefügt, kein Anhang.

  9. #9
    Contao-Nutzer
    Registriert seit
    10.11.2016.
    Beiträge
    21

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Meinst du die Standard E-Mail Versand Funktion des Contao Formulargenerators und das Upload Feld des Formulargenerators? In der Kombination wird normalerweise nur ein Link in der E-Mail eingefügt, kein Anhang.
    Ja, ich meine das normale Upload-Feld und den normalen E-Mail-Versand, siehe Screenshot. Setze ich den Haken bei "Hochgeladene Dateien speichern", wird die Datei korrekt auf dem Server gespeichert und lässt sich über den Link in der Mail öffnen. Lasse ich den Haken weg, wird die Datei als E-Mail-Anhang übermittelt und hat auch die korrekte Dateigröße - nur öffnen lässt sie sich nicht. Auf meinem Server bei Domainfactgory geht das problemlos.

    Da es sich um Bewerbungen handelt und der Datenschutzbeauftragte explizit "verbietet", dass die Bewerberdaten auf dem Server gespeichert werden, kann ich diesen Weg leider nicht gehen.
    Angehängte Grafiken Angehängte Grafiken

  10. #10
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.935

    Standard

    Zitat Zitat von patweb Beitrag anzeigen
    Da es sich um Bewerbungen handelt und der Datenschutzbeauftragte explizit "verbietet", dass die Bewerberdaten auf dem Server gespeichert werden, kann ich diesen Weg leider nicht gehen.
    Dann sollte aber ein (unverschlüsselter) Versand per E-Mail erst recht nicht erlaubt sein.
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  11. #11
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.879
    Partner-ID
    10107

    Standard

    Zitat Zitat von patweb Beitrag anzeigen
    Ja, ich meine das normale Upload-Feld und den normalen E-Mail-Versand, siehe Screenshot. Setze ich den Haken bei "Hochgeladene Dateien speichern", wird die Datei korrekt auf dem Server gespeichert und lässt sich über den Link in der Mail öffnen. Lasse ich den Haken weg, wird die Datei als E-Mail-Anhang übermittelt
    Stimmt, daran hatte ich nicht gedacht.



    Zitat Zitat von patweb Beitrag anzeigen
    und hat auch die korrekte Dateigröße - nur öffnen lässt sie sich nicht.
    Was genau heißt das?

  12. #12
    Contao-Nutzer
    Registriert seit
    10.11.2016.
    Beiträge
    21

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Was genau heißt das?
    Angenommen, ich lade im Formular ein PDF hoch, das 500kb hat. Dann hat der E-Mail-Anhang auch 500kb, wie es sein soll. Beim Versuch, die Datei zu öffnen, erhalte ich allerdings die Meldung "Adobe Acrobat konnte "xxx.pdf" nicht öffnen, da entweder der Dateityp nicht unterstützt wird oder die Datei beschädigt ist (z. B. eine fehlerhaft dekodierte E-Mail-Anlage).".

    Bei einem JPG ist es ähnlich, da meldet das Grafikprogramm "Unbekannte Dateityp".


    @fiedsch
    Das Formular ist SSL-verschlüsselt und der Versand der Anhänge erfolgt per SMTP-Auth über den Port 465. Laut Datenschutzbeauftragtem reicht das. Ob es so ist, kann ich nicht beurteilen, deshalb mache ich in diesem Fall einfach, was der Kunde sagt :-)

  13. #13
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    33.879
    Partner-ID
    10107

    Standard

    Zitat Zitat von patweb Beitrag anzeigen
    Angenommen, ich lade im Formular ein PDF hoch, das 500kb hat. Dann hat der E-Mail-Anhang auch 500kb, wie es sein soll. Beim Versuch, die Datei zu öffnen, erhalte ich allerdings die Meldung "Adobe Acrobat konnte "xxx.pdf" nicht öffnen, da entweder der Dateityp nicht unterstützt wird oder die Datei beschädigt ist (z. B. eine fehlerhaft dekodierte E-Mail-Anlage).".

    Bei einem JPG ist es ähnlich, da meldet das Grafikprogramm "Unbekannte Dateityp".
    Hast du das auch auf anderen Geräten oder E-Mail Adressen überprüft?

  14. #14
    Contao-Nutzer
    Registriert seit
    10.11.2016.
    Beiträge
    21

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Hast du das auch auf anderen Geräten oder E-Mail Adressen überprüft?
    Ja, es ist immer dasselbe Problem und es muss an der Umgebung liegen. Denn entwickelt habe ich die Homepage auf einem Server bei Domainfactory und dort funktioniert es mit 100% identischen Einstellungen astrein. Erst seit dem Umzug zum neuen Provider tritt der Fehler auf.

  15. #15
    Contao-Nutzer
    Registriert seit
    10.11.2016.
    Beiträge
    21

    Standard

    Zitat Zitat von patweb Beitrag anzeigen
    Angenommen, ich lade im Formular ein PDF hoch, das 500kb hat. Dann hat der E-Mail-Anhang auch 500kb, wie es sein soll.
    Ich bin zu dumm zum Lesen, das war eine Falschinfo: die Dateigröße passt vorne und hinten nicht. Ein PDF, das 150kb hat, besitzt als Mail-Anhang nur noch ca. 400b. Auch alle anderen Dateien, die als Anhang kommen, bewegen sich in der Größenordnung zwischen 300b und 400b.

    Vielleicht hilft das bei der Fehlersuche.

  16. #16
    Contao-Nutzer
    Registriert seit
    10.11.2016.
    Beiträge
    21

    Standard

    Das Thema ist vorerst erledigt. Ich habe zwar keine Lösung, aber zumindest die Ursache gefunden: es lag an einem Plugin für mehrseitige Formulare (https://packagist.org/packages/termi...ontao-mp_forms). Nachdem ich es deaktiviert hatte funktioniert nun alles.

    Werde das bei Gelegenheit auf einer Testseite reproduzieren und dem Entwickler mitteilen.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •