Alternative zu jDownloads

  • Hallo zusammen,


    ich möchte meine Seite auf joomla 4.x migrieren. Leider existiert von jDownloads bislang nur eine Betaversion. Auf der Suche nach einer Alternative bin ich über dieses Forum auf dieseSeite gestoßen:


    Folgende Punkte habe ich erfolgreich umgesetzt:

    • htaccess des Hautverzeichnisses durch folgende letzte Zeile ergänzt:
      RewriteRule ^images\/DL\/.*$ readmedia.php [L]
    • Das php-script readmedia.php ins Hauptverzeichnis (htdocs) kopiert
    • Im Ordner /images einen Downloadordner /images/download mit mehreren Unterordnern angelegt

    Der Zugriff auf die Dateien in den Unterordnern ist jetzt nur für angemeldete User möglich. Ein Aufruf der URL, ohne angemeldet zu sein, geht nicht!


    Ich habe trotzdem noch zwei Fragen:

    1. Das [L] gibt an, dass es sich um die letzte Anweisung handelt. Heißt das, dass in der .htaccess alle nachfolgenden Regeln, beginnend mit RewriteRule ignoriert werden. Dann sollte die Regel am Ende der htaccess stehen.
    2. Gibt es für die Regel eine Option/Attribut, den Zugriff nur einer bestimmten Gruppe zu erlauben?
  • N'Abend,


    2. Wenn du ab Zeile 54 diese Schleife in der readmedia.php ergänzt, kannst du nur eine bestimmten Zugriffsebene (hier die mit ID 7) erlauben:





    Mit Gruppen, sprich getAuthorisedGroups() statt getAuthorisedViewLevels() würde es auch funktionieren.

    Siehe auch

    Accessing the current user object - Joomla! Documentation

  • Super, danke, Werde ich ausprobieren.

    Doch noch eine Nachfrage:

    Deine Lösung bezieht sich auf die script-Version für joomla 4. Kann ich deinen code-snippet auch in der script-version für joomla 3 benutzen?

  • Hinweis: Download funktioniert nicht bei allen Dateinamen


    Wie oben beschrieben, kann man das php-script und die htaccess-Datei folgendermaßen einrichten:

    • htaccess des Hautverzeichnisses (htdocs) durch folgende letzte Zeile ergänzen:
      RewriteRule ^images\/Download\/.*$ readmedia.php [L]
    • Das php-script readmedia.php ins Hauptverzeichnis (htdocs) kopieren
    • Im Ordner /images einen Downloadordner /images/Download mit gewünschten Unterordnern anlegen

    Der Download im Download-Ordner als auch in den Unterordnern funktioniert.


    Aber:
    Der Download funktioniert bei mir nicht, wenn im Dateinamen ein Leerzeichen steht. Ersatz durch einen Unterstrich löst das Problem.