News:

Support for jDownloads 3 has been ended
Since 17 August 2023 Joomla.org has discontinued support for Joomla 3.x. Therefore, we will no longer offer official support for our Joomla 3 jDownloads version 3.9.x from January 2024.
Please update your website to the latest Joomla version (Joomla 4 or Joomla 5) as soon as possible. Afterwards, please update jDownloads to the latest published version. The longer you delay, the more difficult the upgrade process for your website is likely to be.

Main Menu
Support-Forum

Direct Download - Upload Verzeichnis - [Fixed]

Started by evilshinobi, 30.01.2015 12:09:45

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

evilshinobi

Hallo Arno

Ich bin am Umsteigen auf Joomla 3.2 und upgrade dazu gerade jDownloads.
Leider klappt das mit den Downloads nicht mehr.. Da ich sehr grosse Dateien habe, musste ich den PHP-Download deaktivieren.

Jedoch klappt nun der Download nicht mehr (siehe Bild). Die Adresse ist vollkommen falsch.
Ich habe beim "Upload directory path" schon alles möglich versucht (den korrekten Pfad) etc. Klappte aber alles nicht. Wenn ich auf Download gehe, wenn ich den gesamten Pfad eingebe zum Software-Ordner (mit Http:///) kommt dann nur die Meldung: The requested file was not found. Please inform the webmaster.
Leider kann ich nicht überprüfen, welchen Pfad er jetzt versucht hat.
???
Hast du mir einen Tipp?

Besten Dank für deine Mühe!

PHP: 5.5.19
Server: Apache
Joomla!: 3.3.6 Stable
jDownloads: 3.2.24 beta


[gelöscht durch Administrator]
  •  

Arno

Hi,
1. der dort angegeben path ist dein aboluter path vom server und keine domain URL.
2. du solltest den nicht ändern (nach Installation) wenn du nicht weißt was du da machst
3. um eine Datei direkt herunterzuladen benötigst du doch nur den Link zu dem download in jDownloads. Wenn du:
Quotemusste ich den PHP-Download deaktivieren
das schon getan hast, wird die Datei doch direkt dem Browser zum download übergeben. Versteh nicht was du da jetzt noch machen willst.
4. Wenn du sehr große Dateien zur downloaden anbietest, solltest du deinen Hoster wegen deiner Probleme ansprechen (Abbrüche) und um optimale Server settings bitten/bestehen.
Im übrigen unterstützt die neue jDownloads Version die Wiederaufnahme unterbrochener Downloads. Auch können Download Manager eingesetzt werden um mehrere Parts gleichzeitig zu laden.
Best Regards / Gruß
Arno
Please make a Donation for jDownloads and/or write a review on the Joomla! Extensions directory!
  •  

evilshinobi

Hallo Arno

Danke für deine Antwort.
Ja, aber der Link wird falsch erzeugt.

Anstatt "https://zoethedog.synology.me/software..." wird "https://volume2/web/software/..." erzeugt. Also den internen Pfad auf dem Linux-Server, wo sich das File befindet.
So kann natürlich nichts runtergeladen werden, da der Pfad natürlich nicht gefunden wird.

Da ich die Webseite von meinem NAS hoste, wäre ich der Webhost. Mit jdownloads 1.9 gab es da nie probleme. Nur bei der neuen Version funktioniert was mit der Linkgenerierung nicht.
  •  

Arno

Also in den letzten etwa 9 Monaten hat nicht ein einziger Anwender Probleme damit gehabt, dass hier nun der absolute Pfad eingetragen wird. Wenn es in deinem besonderen Fall nicht automatisch passt, musst du ihn halt anpassen. Aber das kann jD nicht wissen. Also musst du da Hand anlegen. Was aber genau kannst nur du wissen.

Zur Hilfe: der bei der Installation eingetragene Pfad ist der absolute Pfad zu dem '/jdownloads' Folder deiner Joomla Installation. In der alten Version MUSSTE dieser Ordner noch in der Joomla Installation existieren. Das hatten aber viele bemängelt und wurde daher in dieser Art und Weise geändert.
Best Regards / Gruß
Arno
Please make a Donation for jDownloads and/or write a review on the Joomla! Extensions directory!
  •  

evilshinobi

#4
Hallo Arno

Der interne Pfad wurde auch korrekt gefunden im Backend. Der wäre "volume2/web/zoethedog3/software". Das funktioniert auch alles.
Das Problem ist aber im Frontend. Wenn ich auf Download klicke, wird die Download-URL den internen Pfad anstatt meine Domain+Pfad.
Somit können die Anwender nichts runterladen, ausser Sie ersetzen http://volume2/web/zoethedog3/software.... durch http://zoethedog.synology.me/zoethedog3/software.

Funktioniert es bei deiner Testumgebung im Frontend richtig, wenn du Downloadn nicht über PHP abwickelst?
  •  

Arno

#5
QuoteFunktioniert es bei deiner Testumgebung im Frontend richtig, wenn du Downloadn nicht über PHP abwickelst?
Ja. Gerade noch einmal getestet.

Verwendest du die 'Zusammenfassung' vor dem Download oder die Direkt Download Option?

Edit:
übrigens wird eine Warnung bei dir angezeigt.. pic.


[gelöscht durch Administrator]
Best Regards / Gruß
Arno
Please make a Donation for jDownloads and/or write a review on the Joomla! Extensions directory!
  •  

Arno

#6
Quoteausser Sie ersetzen http://volume2/web/zoethedog3/software.... durch http://zoethedog.synology.me/zoethedog3/software.
Das ist in diesem Fall nicht notwendig. Auch wenn die Option deaktiviert wird, den Download über das php script abwickeln zu lassen, wird der Link zum Download verschleiert. Bedeutet das der Link zum Download ähnlich (oder auch identisch) zum 'normalen' Link aussieht. Erst im Script wird dann die Datei direkt zum Browser geleitet. Somit ist der direkte Pfad zur Datei auch bei dieser Art des Downloads nicht sofort sichtbar.

Beispiel für einen direkten Download Link:
http://joomla31.jdownloads.de/jd-3-1/send/4-beispiel-kategorie/3-filename-with-german-umlaute-ae-ue-oe
Best Regards / Gruß
Arno
Please make a Donation for jDownloads and/or write a review on the Joomla! Extensions directory!
  •  

evilshinobi

Danke für deine Hilfe, leider konnte ich es aber noch nicht lösen :'(

Ich habe mal ein frisches Joomla installiert und nur jdownloads draufgeknallt mit deiner Beispieldatei.
Da habe ich denselben Fehler, wenn ich "Download per PHP" ausschalte.

Eventuell siehst du was, wenn du es versuchst?
Kannst du mal versuchen, die Beispieldatei herunterzuladen? Wenn du in der Konfiguration den PHP-Download wieder aktivierst, funktioniert es.
Komisch, dass nur ich das Problem anscheinend habe  ???

Admin-Login: admin 
Passwort:  testdownload
Seite: https://zoethedog.synology.me/joomla/

Danke für die Info wegen dem Zertifikatsfehler. Darum kümmere ich mich dann, wenn die Seite läuft.

Besten Dank!
  •  

Arno

habe natürlich das selbe Resultat wie du, hab aber keine Ahnung wieso.
QuoteDa ich die Webseite von meinem NAS hoste, wäre ich der Webhost.
Ähm... ich bin jetzt nicht der Server Profi, aber könnte es eventuell daran liegen?
Best Regards / Gruß
Arno
Please make a Donation for jDownloads and/or write a review on the Joomla! Extensions directory!
  •  

evilshinobi

#9
Hallo Arno

Das ist komisch..
Live-URL-Pfad von der Seite stimmt auch, im .htaccess konnte ich auch nichts korrigieren...
Ich habe für mich mal aber eine Übergangslösung gefunden.

unter "/controllers/download.php" habe ich die Zeile 781 geändert. Den if-Code habe ich wie folgt geändert:
Von:
    // if set the option for direct link to the file
           if (!$jlistConfig['use.php.script.for.download']){
               $root = rtrim($_SERVER["DOCUMENT_ROOT"], "/");
               $root = rtrim($_SERVER["DOCUMENT_ROOT"], "\\");
               $host = $_SERVER["HTTP_HOST"].'/';                
               $filename_direct = str_replace($root, $host, $filename_direct);
               $filename_direct = str_replace('//', '/', $filename_direct);
               if (strpos('http://', $filename_direct) === false && strpos('https://', $filename_direct) === false && strpos('ftp://', $filename_direct) === false){
                   $filename_direct = 'http://'.$filename_direct;
               }

zu:
     // if set the option for direct link to the file
           if (!$jlistConfig['use.php.script.for.download']){
               $root = rtrim($_SERVER["DOCUMENT_ROOT"], "/");
               $root = rtrim($_SERVER["DOCUMENT_ROOT"], "\\");
               $host = $_SERVER["HTTP_HOST"].'/';                
               $filename_direct = str_replace($root, $host, $filename_direct);
               $filename_direct = str_replace('//', '/', $filename_direct);
               if (strpos('http://', $filename_direct) === false && strpos('https://', $filename_direct) === false && strpos('ftp://', $filename_direct) === false){
                   $filename_direct = 'http://zoethedog.synology.me/zoethedog'.substr ($filename_direct,22);
               }


Ich habe das gefühl, dass irgendwas mit $root bzw $host nicht stimmt... Woher nimmt jdownloads diesen Wert?
Aber danke für deine Mühe. Ich habe dir 15? dafür gespendet.
Falls du den Fehler ausfindig machen könntest oder mir mehr Infos dazu geben könntest, wäre ich dir sehr dankbar  :)
Sonst müsste ich das immer wieder neu anpassen nach einem Update.

  •  

Arno

#10
Hi,
danke für deine Spende.

Quoteunter "/controllers/download.php" habe ich die Zeile 781 geändert. Den if-Code habe ich wie folgt geändert:
Bedenke dass diese nach einem Update wieder weg sind. Oder du versuchst es mit der 'override' Möglichkeit von Joomla.

QuoteIch habe das gefühl, dass irgendwas mit $root bzw $host nicht stimmt... Woher nimmt jdownloads diesen Wert?
Das sind Variablen die von deinem Server kommen, daher ja meine Überlegung, dass damit estwas nicht stimmt.
Siehe hier:
http://php.net/manual/de/reserved.variables.server.php

Bin auch noch auf diesen Artikel gestoßen, bin aber nicht ganz sicher das dies dein Problem ist:
http://cup.wpcoder.de/htaccess-document-root/
Best Regards / Gruß
Arno
Please make a Donation for jDownloads and/or write a review on the Joomla! Extensions directory!
  •  

evilshinobi

Ok, danke für die Info.
Habe ein PHP-Seite erstellt, welches mir den Host und Pfad anzeigt ( $_SERVER["HTTP_HOST"] sowie ($_SERVER["DOCUMENT_ROOT"] ) . Der gibt mir alles korrekt an (also nichts mit /volume2/ etc.).
Wenn ich download.php nur $root oder nur $host für die Linkerzeugung angebe, kommt der richtige Teilpfad, aber alles zusammengewürfelt als $filename_direct kommt es falsch... Komische Sache.

Jenu, ich lebe mal so. Vielen Dank für deine Mühe. Für den speziellen Fall bei mir solltest du nicht deine Zeit verschwenden.
Ich glaube nicht, dass ich da etwas im NAS ändern kann, die Einstellungsmöglichkeiten sind sehr beschränkt.

PS: in der configuration.php von Joomla gibt es die Variable $live_site. Eventuell eine Möglichkeit, dass man diese nehmen könnte, anstatt $host wäre eine Lösung.
Eventuell für Seiten mit Multidomains auch interessant. Aber kenn mich leider da nicht so aus.
  •