Contao-Camp 2024
Ergebnis 1 bis 16 von 16

Thema: Benutzer kann keine Dateien herunterladen

  1. #1
    Contao-Nutzer
    Registriert seit
    23.02.2011.
    Beiträge
    117

    Standard Benutzer kann keine Dateien herunterladen

    Hallo zusammen,

    es gibt einen geschützten Mitgliederbereich über den u.a. PDF's heruntergeladen werden, diese liegen
    im Verzeichnis /intern/zeitschriften/ (beide Ordner sind geschützt bzw. haben das "Schloss").
    Ist das Mitglied nun eingeloggt kann er die Inhalte sehen, aber der Download funktioniert nicht, hier
    kommt die Fehlermeld "Oops! An Error Occurred - The server returned a "404 Not Found"."

    Ich habe schon versucht dies über ein Benutzerverzeichnis zu regeln, leider ohne Erfolg und ich
    möchte due Verzeichnisse auch nicht "öffentlich" machen.

    Viele Grüße
    Mirko
    Geändert von gia-online (19.09.2018 um 10:35 Uhr)

  2. #2
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.612
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Bei geschützten Ordnern kannst Du im Dateimanager die PDF-Datei nicht über den PDF-Icon herunterladen, das geht nur bei öffentlichen Ordnern.
    Wenn Du aber in die Detailsinfo (i) rein gehst, findest Du dort einen Download-Link der funktioniert (war schon immer so!)

  3. #3
    Contao-Nutzer
    Registriert seit
    23.02.2011.
    Beiträge
    117

    Standard

    Hallo Hagen,
    der Link funktioniert aber nur als Backend-User und nicht als Frontend-User der sich
    für einen geschützten Bereich (Intern) angemeldet hat. Will der Frontend-User diesen
    Link öffnen, wird er auf www.domain.de/contao/ weiter geleitet.

    Gruß & Dank
    Mikro

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

    Standard

    Du stellst die Daten über das Download bzw. Donwnloads Content-Element zur Verfügung?
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  5. #5
    Contao-Nutzer
    Registriert seit
    23.02.2011.
    Beiträge
    117

    Standard

    Hallo fiedsch,

    nein, ich binde den Download (Link) über das Text-Element ein.

    Gruß
    Mirko

  6. #6
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.612
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Dann hat die Fehlermeldung ja recht, die Datei ist nicht öffentlich zugänglich!

    Benutze dafür das Download-Element oder, wenn der Dateiname variiert, nimm das Downloads-Element und mache den Haken bei dem Ordner, dann bietet er ALLE PDFs aus diesem Ordner zum Download an.

  7. #7
    Contao-Nutzer
    Registriert seit
    23.02.2011.
    Beiträge
    117

    Standard

    Hallo,

    das mit dem Download-Element klappt... ist blöderweise für die vorgesehene Darstellung nicht optimal
    deswegen haben wir den Link ins Text-Element genommen.
    Einen Textlink kann ich also perse nicht auf einen geschützten Ordner/Datei setzen?

    Gruß & Dank
    Mirko

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

    Support Contao

    Standard

    Bei einem direkten Link wird die Datei direkt vom Webserver ausgeliefert, ohne Beteiligung von Contao. Das klappt natürlich nicht, weil bei einem nicht öffentlichen Ordner kein entsprechender SymLink auf das reale Verzeichnis, welches die gewünschte Datei enthält, vorhanden ist.

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

    Standard

    Du könntest das Download(s) Content Element einbauen, per CSS unsichtbar machen und den Textlink auf die URL des Download(s) CE setzen.

    Ob das besonders elegant ist, musst Du selbst beurteilen. Ich finde: eher nicht.
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  10. #10
    Contao-Nutzer
    Registriert seit
    23.02.2011.
    Beiträge
    117

    Standard

    Okay, schade aber habe ich verstanden.

    Viele Grüße
    Mirko

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

    Support Contao

    Standard

    Welche Darstellung soll denn genau erreicht werden?

  12. #12
    Contao-Nutzer
    Registriert seit
    23.02.2011.
    Beiträge
    117

    Standard

    Es soll in einem internen Mitgleiderbereich ein einfacher Textlink (im Fließtext) auf ein PDF-File
    gesetzt werden.

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

    Support Contao

    Standard

    Hmm, also ohne eine URL wie https://www.domain.de/download.html?...s/beispiel.pdf wird es wohl nicht abgehen, weil wie geschrieben der direkte Aufruf mangels Datei in diesem Pfad nicht gehen kann. Kann man natürlich mit einem per CSS versteckten Download-Element lösen, wobei man um das ?file=files/... sowieso nicht herumkommt. Für jede Datei ein Download-Element oder ein Downloads-Element für jedes Verzeichnis erstellen zu müssen ist allerdings auf Dauer nervig. Ich habe das in einem Projekt mal so vermieden, indem ich ein entsprechendes PHP-Skript auf einer Downloadseite eingebunden habe, das prüft, ob die Datei existiert, ob sie von der Dateiendung her grundsätzlich downloadbar ist und der Benutzer das Recht hat darauf zuzugreifen. Falls ja, wird die Datei ausgeliefert mit \Controller::sendFileToBrowser($file). Das war allerdings Contao 3.5, keine Ahnung ob das in 4.x noch so funktioniert.

  14. #14
    Contao-Nutzer
    Registriert seit
    23.02.2011.
    Beiträge
    117

    Standard

    Vielen Dank für die Info.

  15. #15
    Contao-Nutzer
    Registriert seit
    08.04.2010.
    Ort
    Berlin
    Beiträge
    67

    Standard

    Zitat Zitat von tab Beitrag anzeigen
    Bei einem direkten Link wird die Datei direkt vom Webserver ausgeliefert, ohne Beteiligung von Contao. Das klappt natürlich nicht, weil bei einem nicht öffentlichen Ordner kein entsprechender SymLink auf das reale Verzeichnis, welches die gewünschte Datei enthält, vorhanden ist.
    Das ist doch keine brauchbare Erklärung? Wenn ich im TinyMCE einen Link auf eine Datei setze, dann wird durch Auswahl einer Datei in einem geschützten Ordner zunächst ein Insert-Tag als Link-Ziel im Popup im TinyMCE erfasst. Dennoch zeigt am Ende Contao im Frontend und nach dem Speichern des Texts und dem erneuten Öffnen desselbigen die URL im HTML so an, als würde der Ordner ungeschützt abrufbar sein. Hier eine Beteiligung von Contao auszuschließen ist Unsinn. Natürlich könnte Contao den im TinyMCE gesetzten Link einfach so setzen, dass er - wie bei den Download-Elementen ja auch - nicht direkt auf die Datei zeigt, sondern auf ein Proxy-Skript von Contao. Daher ist das definitiv eine unnötige Macke im Design von Contao respektive ein Fehler und hat mit der Erklärung oben nichts zu tun.

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

    Support Contao

    Standard

    Ob das jetzt so sein MUSS, darüber habe ich gar nichts geschrieben. Nur dass es so IST. Und damit hat die Erklärung oben sehr wohl was zu tun. Mit einem "direkten Link" meine ich eben einen Link ohne irgendein "Proxy-Skript" von Contao dazwischen. Ob das gut ist oder schlecht, gewollt oder ein Fehler, das musst du die Entwickler fragen und darüber kann man sicher auch streiten. Zum Beispiel darüber, ob man geschützte Bildern im TinyMCE nicht mehr über das Popup auswählbar machen sollte. Oder ob Contao zukünftig auch Requests für geschützte Bilder bearbeiten sollte, also nicht nur für Dateidownloads, wie es momentan der Fall ist. Das letztere ist einfach momentan - zumindest ohne Erweiterungen - nicht so. Wenn du das anders haben willst, dann kannst du ja jederzeit auf Github einen entsprechenden Feature-Request aufmachen.

    Dass Contao natürlich sehr wohl dafür verantwortlich ist, den Bildlink im Seitenquelltext auszugeben, das ist klar. Aber das habe ich auch nicht bestritten. Ich schreibe nur, dass Contao ohne irgendeine entsprechende Erweiterung, die im von Contao erzeugten Quelltext verlinkten Bilder (die Dateien, nicht die Links!) nicht selbst ausliefert und somit auch die Zugriffsberechtigung darauf nicht prüfen kann. Nochmal: Das ist der Istzustand, nicht notwendigerweise das, was du dir vielleicht wünschen würdest.

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
  •