parce qu'avec php j 'arrivais pas à uploader plus de 2 Go alors un applet java m'aidait à contourner le problème.Pourquoi passer par un service tiers ?
J'ai pas trop compris, mais je vais repondre selon ce que j'ai compris. J'utilise le protocole ftp avec mon applet pour uploader. Maintenant quand un usager se connecte il voit les vidéos qui lui ont été envoyé et il doit les télécharger .Et par ailleurs, je ne vois pas ce que ça change, il uploade par ftp ?
Voilà comment je procèdeJe m'étais documenté la dessus quand j'avais fais mon script de téléchargement sur mon site...
Si je ne me trompe pas il faut préciser dans les headers le transfert en mode binaire.
Pour la taille, c'est dans les headers aussi -> calculer la taille du fichier et ensuite insérer la valeur dans le header content_length...
Bref tout ce joue dans les headers, enfin si évidemment c'est possible plus de 2 gigas avec readfile, moi personnellement je n'ai jamais testé![]()
header('Content-disposition: attachment; filename="' . $titre . '"');
header('Content-Type: application/force-download');
header('Content-Transfer-Encoding: binary');
header('Content-Length: '.$size[4]);
header('Pragma: no-cache');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Expires: 0');
readfile($path);
Pour moins de 2Go ca va mais plus ca marche plusreadfile
qui pose problème.header("Location:".$file);
mmmh, okJ'ai pas trop compris, mais je vais repondre selon ce que j'ai compris. J'utilise le protocole ftp avec mon applet pour uploader. Maintenant quand un usager se connecte il voit les vidéos qui lui ont été envoyé et il doit les télécharger .
Code : Tout sélectionner
<FilesMatch "\.(wmv|flv|zip|rar|mpg|avi|mov|mp4|mp2|mpeg)$">
ForceType applicaton/octet-stream
</FilesMatch>
header("Content-Type: application/octet-stream");
Il est solide, ne t'inquiète pasEt arrêtez de blâmer readfile, la pauvre …
Hop, ~= 2.5 GoBah génère le.
Code : Tout sélectionner
dd if=/dev/zero of=grosfichier bs=1k count=2500000// en spécifiant le cache
header("Expires: 0");
header("Pragma: no-cache");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
// Donc ce header:
header("Content-Type: application/octet-stream");
// Associé avec celui-ci:
header("Content-Transfer-Encoding: binary");
PS: C'est juste une supposition et non une affirmation