j.vanhoff Posted May 19, 2010 Share Posted May 19, 2010 Bonjour, Nous avons créé une boutique via prestashop, il s'agit de la vente de logiciel CAO...Le problème que nous rencontrons est que je ne sais pas mettre mon fichier pour pouvoir télécharger le logiciel après l'achat car la taille est en moyenne de 200Mo...Est ce que quelqu'un peut m'aider...Merci Link to comment Share on other sites More sharing options...
bechir Posted May 19, 2010 Share Posted May 19, 2010 Bonjour,Dans le fichier config/config.inc.php vous trouvez @ini_set('upload_max_filesize', '100M'); La vous pouvez augmenter la taille maximale . Link to comment Share on other sites More sharing options...
jeckyl Posted May 19, 2010 Share Posted May 19, 2010 Bonjour,vous pouvez aussi ruser.Lorsque vous créez votre fiche vous enregistrez un petit fichier nommé comme vous le désirez, ce fichier est enregistré dans le répertoire download à la; racine de votre site, puis vous uploadez votre fichier de 200Mo en le nommant de la même façon que le fichier uploadé sur la fiche produit. Link to comment Share on other sites More sharing options...
hermes131 Posted July 20, 2010 Share Posted July 20, 2010 Pourquoi la ligne de code indique 100M alors que la limitation de poids est a 12Mo ???Est il un multiple, j'ai essayer avec des fichier de 50Moest cela n'est pas possible ? IDEM en ajoutant 200M,Pour ma part j'ai mis 500Met toujours pas possible ????Grrrrrrrquand a faire un rename du file Uploder,Le fichier est introuvable, pourtant il me dit qu'il est bien la, mais au moment de le telecharger = File No FOUNDSi quelqu'un as une idée Link to comment Share on other sites More sharing options...
eltitos Posted July 21, 2010 Share Posted July 21, 2010 il y a deux limites pour la taille d'un fichier.La premiere dans le fichier config.inc.php comme indiquer precedemmentla seconde dans le fichier php.ini du serveur, si vous n'avez pas acces au fichier php ( tres frequent pour les serveurs mutalises) il faut faire la manip indiquer par JeckylSi vous avez acces au fichier php.ini, il faut modifier cette variale upload_max_filesize = 128Mo etcPuis redemarrer le serveur web (apache, IIS , Nginx ...) Link to comment Share on other sites More sharing options...
hermes131 Posted July 21, 2010 Share Posted July 21, 2010 J'ai bien essayer avec le fichier config.inc en passant de 100M a 900M,Mais rien Je suis chez One.com, donc tintin pour le Php.IniQuand je selectionne "Produits a telecharger"Cette phrase en dessous du champs : La taille maximum d'upload sur votre serveur est de: 12MLa variable duchiffre 12 dois bien venir de quelques par et essayer de trouver une piste qui irait ? Link to comment Share on other sites More sharing options...
eltitos Posted July 22, 2010 Share Posted July 22, 2010 La limite indiquée dans le php.ini est prioritaire à la limite fixée par le config.inc.phpVoir avec One.com si ils peuvent augmenter la limite du php.ini Link to comment Share on other sites More sharing options...
dano Posted August 15, 2010 Share Posted August 15, 2010 Je rencontre un problème similaire en ayant fait la manip expliquée par jeckyl mais quand j'essaie de télécharger ça me dit que le fichier n'existe pas alors que si (explications et screens ici : http://www.prestashop.com/forums/viewthread/66240/rapports_de_bugs/probleme_produit_a_telecharger)Est-ce que la taille fixée dans le php.ini peut empêcher le téléchargement de fichier dont la taille est supérieur à cette valeur?? Link to comment Share on other sites More sharing options...
eltitos Posted August 15, 2010 Share Posted August 15, 2010 Est-ce que la taille fixée dans le php.ini peut empêcher le téléchargement de fichier dont la taille est supérieur à cette valeur?? NonJ'ai vu que dans ton repertoire il y a un fichier htaccess c'est peut etre lui qui limite. Link to comment Share on other sites More sharing options...
dano Posted August 15, 2010 Share Posted August 15, 2010 non rien de tel dans le htaccess de ce répertoire : Order deny,allow Deny from all Link to comment Share on other sites More sharing options...
eltitos Posted August 15, 2010 Share Posted August 15, 2010 j'ai vu aussi sur ton screen que le lien fini par un "."Est ce firefox qui la rajouter ou c'est vrai lien ? Link to comment Share on other sites More sharing options...
dano Posted August 15, 2010 Share Posted August 15, 2010 non c'est firefox qui l'ajoute (fin de phrase je pense lol). Dans la base de données il n'y a pas de point je viens de regarder de nouveau....Moi qui n'avais déjà plus beaucoup de cheveux :s Link to comment Share on other sites More sharing options...
dano Posted August 15, 2010 Share Posted August 15, 2010 et est-il possible qu'il y ait un truc à modifier dans "get-file.php" ? Link to comment Share on other sites More sharing options...
eltitos Posted August 15, 2010 Share Posted August 15, 2010 En passant par le compte client le lien arrive bien a ca ?http://shop.lecesa.com/get-file.php?key=keydufichier684686846846gd4f684s6fg1s86f1s6f1Verifie les droits en lecture du fichier. Link to comment Share on other sites More sharing options...
dano Posted August 15, 2010 Share Posted August 15, 2010 exemple : get-file.php?key=54d958d9281a755a6bc19eb4d0d3e761a860dd0b-40e7c9b16a55efaa728b6d1b42764b9220356e03 La 1ere partie du "key" correspond au nom crypté dans la base de données.Les droits de quel fichier?Parce que même depuis l'administration impossible de le télécharger (enfin les 2 fichiers les plus gros), donc pas une question de "key" puisque que depuis l'administration il a juste la chaine de caractère qui correspond à celle enregistrée dans la base de données et celle qui apparait dans le FTP.Et les droits sont les même que pour les 7 autre fichiers qui eux se téléchargent sans problème :s Link to comment Share on other sites More sharing options...
dano Posted August 15, 2010 Share Posted August 15, 2010 bon si ça peut vous aider dans l'identification du problème, j'ai essayé avec un fichier moins gros mais avec le même nom crypté et là ça passe.... Link to comment Share on other sites More sharing options...
eltitos Posted August 15, 2010 Share Posted August 15, 2010 tu peux essayer de rajouter dans le php.ini ca post_max_size 256MMais j'y crois pas tropSi tu as pas acces au php.ini dans le fichier htaccess php_value post_max_size 256M Link to comment Share on other sites More sharing options...
dano Posted August 15, 2010 Share Posted August 15, 2010 je n'ai pas accès au php.ini malheureusement....Dans quel htaccess je dois ajouter cette ligne?Celui à la base de la boutique avec les lignes écrites par prestashop pour les adresses simplifiées?-- EDIT --j'ai essayé et j'ai eu cette erreur : Internal Server ErrorThe server encountered an internal error or misconfiguration and was unable to complete your request. En consultant un fichier d'erreur sur mon FTP j'ai trouvé ça :PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 255324161 bytes) in /home/lecesa/public_html/shop/get-file.php on line 106 "255324161 bytes" semble être la taille du fichier à télécharger.... Link to comment Share on other sites More sharing options...
eltitos Posted August 15, 2010 Share Posted August 15, 2010 Il faut augmenter la "limite" memoire via le htaccess si ca marche sinon il reste que le php.iniphp_value memory_limit 300M dans le .htaccess a la racine du site Link to comment Share on other sites More sharing options...
dano Posted August 16, 2010 Share Posted August 16, 2010 je dois juste faire un copier/coller de ça: php_value memory_limit 300M ?Parce que là j'ai de nouveau une erreur 500 :sJe vais voir pour faire modifier le php.ini si il n'y a plus que cette solution car j'aurai bien essayé en faisant un pack de produits à télécharger mais ce n'est pas possible....Est-ce que l'on peut faire ça avec la dernière version de prestashop? Parce que si modifier le php.ini n'est pas possible mais que la dernière version de prestashop permet les pack à télécharger il n'y aura plus que cette solution :s Link to comment Share on other sites More sharing options...
eltitos Posted August 16, 2010 Share Posted August 16, 2010 je dois juste faire un copier/coller de ça: php_value memory_limit 300M ? Oui, essaye de redemarrer le serveur web Link to comment Share on other sites More sharing options...
dano Posted August 16, 2010 Share Posted August 16, 2010 je n'ai pas cette fonction :sDu moins je ne crois pas... Link to comment Share on other sites More sharing options...
jeckyl Posted August 16, 2010 Share Posted August 16, 2010 Un fichier moins gros mais avec le même nom de fichier ? Link to comment Share on other sites More sharing options...
dano Posted August 16, 2010 Share Posted August 16, 2010 oui, les fichiers achetés sont des archives ZIP.J'en ai donc créé une avec un simple petit fichier à l'intériere et je l'ai renommé comme l'une de celle qui pose problème, puis uploadé via l'administration pour avoir le nom crypté. Là le téléchargement fonctionne. Puis je renomme la "vraie" archive ZIP sur le ftp avec le nom crypté, et là ça ne fonctionne plus.C'est la méthode que tu expliques : vous pouvez aussi ruser.Lorsque vous créez votre fiche vous enregistrez un petit fichier nommé comme vous le désirez, ce fichier est enregistré dans le répertoire download à la; racine de votre site, puis vous uploadez votre fichier de 200Mo en le nommant de la même façon que le fichier uploadé sur la fiche produit. Link to comment Share on other sites More sharing options...
jeckyl Posted August 16, 2010 Share Posted August 16, 2010 Flute, là je sèche pour vous proposer une autre solution. Link to comment Share on other sites More sharing options...
dano Posted August 16, 2010 Share Posted August 16, 2010 bah je voir ce que eltitos me propose mais j'avoue que c'est assez déroutant comme problème....Il n'y a vraiment rien dans le fichier “get-file.php” qui peux poser problème? Link to comment Share on other sites More sharing options...
dano Posted August 16, 2010 Share Posted August 16, 2010 Bon bah voilà, le technicien a accepté de passer le paramètre MEMORY_LIMIT de php.ini à 256M et maintenant tout fonctionne....Comme quoiMerci à tous pour votre aide Link to comment Share on other sites More sharing options...
jeckyl Posted August 16, 2010 Share Posted August 16, 2010 Merci à toi d'avoir partagé la solution.N'oublie pas de mettre [Résolu] au titre de ton premier post. Link to comment Share on other sites More sharing options...
dano Posted August 16, 2010 Share Posted August 16, 2010 Normal que je vous tienne au courant si d'autres personnes rencontrent ce problème ;-)Je ne peux éditer le 1er post car c'est pas moi qui l'ai ouvert, j'ai juste posté à la suite car le problème était le même :sMais j'avais ouvert un post doublon (je m'en excuse... ne me tapaient pas :s ) je vais voir pour l'éditer ;-) Link to comment Share on other sites More sharing options...
donaldlloyds Posted September 20, 2010 Share Posted September 20, 2010 bonjour j ai le même problème alors que faire si le technicien ne veut pas augmenter la memory limit ? Link to comment Share on other sites More sharing options...
msadouni Posted October 28, 2010 Share Posted October 28, 2010 Bonjourj'ai résolu le problème de téléchargement de gros fichiers en changeant les headers et en lisant le fichier par blocs plutôt qu'en un seul appel à readfile() :remplacer les lignes suivantes à la fin de get-file.php lignes 259 à 264 header('Content-Transfer-Encoding: binary'); if ($mime_type) header('Content-Type: '.$mime_type); header('Content-Length: '.filesize($file)); header('Content-Disposition: attachment; filename="'.$filename.'"'); readfile($file); par header('Content-Transfer-Encoding: binary'); if ($mime_type) header('Content-Type: '.$mime_type); header('Content-Length: '.filesize($file)); header('Content-Disposition: attachment; filename="'.$filename.'"'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); $handle = fopen($file, 'rb'); @ob_end_clean(); while(!feof($handle)) { print fread($handle, (1024 * 1024)); @flush(); @ob_flush(); } fclose($handle); Link to comment Share on other sites More sharing options...
daftfunk Posted May 27, 2011 Share Posted May 27, 2011 Bonjour,Je rencontre sensiblement les mêmes problèmes que vous voici un petit récapitulatif de ma situation:- Prestashop V1.4.1.0- Je suis Chez OVH mutualisé- Uploader un fichier de 20 000 Ko... j'ai laissé tombé il me le prend pas meme si la taille des fichiers authorisés pas mon serveur sont de 64Mo!- J'ai fait la petite manip signée Jeckyl Uploader un petit truc avec le nom de mon gros fichier que je rebalance via ftp et je lui donne le nom codé- J'achete mon produit j'ai le lien que je telecharge > bilan 1.1M sur 20!!!ConclusionC'est donc bien la limite de l'upload du serveur qui est en cause? Personne chez OVH n'a trouvé une solution? (sans attaqué le PHP.ini)Le trick de msadouni n'a pas l'aire de fctionner chez moi ( mais le code source a changé depuis le poste ) peut etre pourrais tu regarder si tes changements sont toujours d'actualité CF piece jointeMerci de votre attention get-file.php Link to comment Share on other sites More sharing options...
msadouni Posted May 27, 2011 Share Posted May 27, 2011 Bonjour,je n'avais pas précisé sur le post, la version de Prestashop sur lequel j'ai fait cette modif est la 1.2.5 de mémoire. Ceci dit, vu le code du nouveau fichier get-file.php, elle devrait toujours fonctionner en remplaçant simplement la fin du fichier à partir de la ligne 291.Sinon, essayez en rajoutant simplement un ob_flush() à la ligne 299 comme expliqué ici http://www.php.net/manual/en/function.fread.php#51720 et en remplaçant fgets() par fread() Link to comment Share on other sites More sharing options...
daftfunk Posted May 27, 2011 Share Posted May 27, 2011 ... veux rien savoir il bloque le fichier a 1.1Mo 290 /* Set headers for download */ header('Content-Transfer-Encoding: binary'); header('Content-Type: '.$mimeType); header('Content-Length: '.filesize($file)); header('Content-Disposition: attachment; filename="'.$filename.'"'); ob_end_flush(); $fp = fopen($file, 'rb'); while (!feof($fp)) echo fread($fp, 16384); ob_flush(); 300 exit; J'ai bien tenté de de changer la valeur /echo fread($fp, 16384);/ mais comme je sais pas trop ce que je fais...Je commence a deseperer Link to comment Share on other sites More sharing options...
msadouni Posted May 27, 2011 Share Posted May 27, 2011 Vérifiez que le fichier a bien été uploadé et fait bien 20 Mo, et testez avec un autre fichier sur un autre produit. À part ça, pour le moment je ne vois pas d'autre chose. Au cas où ce soit un problème d'upload, pour uploader les fichiers j'ai utilisé le module Batch Downloadable Product de Presto-Changeo http://www.presto-changeo.com/en/prestashop-modules/38-batch-downloadable-product.html qui fonctionne très bien. Link to comment Share on other sites More sharing options...
daftfunk Posted May 27, 2011 Share Posted May 27, 2011 Si j'ai bien compris ton morceau de code :20 Mo c'est trop gros a telecharger donc tu le decoupes en tranche pour faire l'upload de petit paquet... c'est ca? Link to comment Share on other sites More sharing options...
daftfunk Posted May 30, 2011 Share Posted May 30, 2011 Dans la dernière version de prestashop, y a t il une table qui 'loggerai' la taille des fichiers uploader à télécharger... et pas la même ferais une petite vérification d'intégrité du fichier? Link to comment Share on other sites More sharing options...
daftfunk Posted June 1, 2011 Share Posted June 1, 2011 Bon je viens vous donner des updates de ma situation... qui pourra aider d'autres âmes en peines.Donc il s'avère que le téléchargement fonctionne! le problème est lié a l'extention .zip .rar du fichier que je propose. J'ai pas encore la solution mais lorsque je telecharge l'archive elle est corrompue!J'ai trouvé ça http://forum.ovh.com/showthread.php?t=13933 mais j'ai pas access au httpd.conf Ce genre de soucis parle t il a quelqu'un?Merci de votre patience Link to comment Share on other sites More sharing options...
sogedic Posted July 10, 2011 Share Posted July 10, 2011 BonjourJ'ai tout essayé - produit a télécharger : parcourir - je sélectionne un pdf réponse : Le fichier de ce produit est absent: /var/viaduc/clients/h2184/prestashop/download /99db97a94c212eb8322420e68e5dfb8d2d9d9190- document joint ; parcourir : je sélectionne un zipet rien ne se passeactuellement le pdf et le zip de tes sont vide pour voir si c’était un problème de taille) - les erreurs sont toujours làje bute sur ce "détail" depuis 1000 ans :-)Merci à celui qui voudra m'aider Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now