2011-11-01 2 views
3

J'implémente un système de téléchargement de fichier en utilisant cakephp. J'utilise php 5.2.5 et cakephp 1.2. Ci-dessous, j'ai mentionné les tailles de fichiers maximum que j'ai donné dans php.ini.Taille maximum du fichier uploadé en php

post_max_size = 2000M 
upload_max_filesize = 1800M 
memory_limit = 3328M 

Mais je besoin de télécharger 5 fichiers GB et lorsque je change la taille de téléchargement de fichiers à 5GB dans le serveur Web php.ini ne répond pas. Y at-il une méthode que je peux utiliser pour télécharger des fichiers de 5 Go sur mon système? et Comment puis-je calculer la taille maximale du fichier que je peux configurer dans php.ini.

En migrant vers PHP 5.3, je pourrai prendre en charge plus de capacité pour le téléchargement de fichiers.

À la vôtre !!!!

+0

La plupart du temps, ces paramètres sont basés sur le serveur. –

+4

Le téléchargement de 5 Go de données via HTTP n'est pas pratique, essayez FTP. – TJHeuvel

Répondre

1

Et vous allez télécharger ces 5 Go en utilisant un formulaire Web? Cela prendrait des âges. Vous devriez probablement utiliser FTP.

+0

Oui c'est ce que j'ai proposé à mon client de faire (FTP). Mais il voulait cette fonctionnalité. Y a-t-il une configuration pour cela? – Shanaka

+1

Je pense que vous devez convaincre votre client que c'est impossible :) –

0

Définissez également la variable max_input_time, sinon PHP peut dépasser l'heure d'entrée lors de la lecture du fichier téléchargé et arrêter l'exécution.

Utilisez l'uploader flash (uploadify peut faire l'affaire) - parce que le navigateur va raccrocher et n'attendra pas la réponse du serveur.

+0

La chose est Darhazer quand j'ai changé ces paramètres à plus que le serveur Web de 2000 Mo ne s'exécute pas correctement. – Shanaka

2

AFAIK télécharger 5 Go avec un HTML-Form est vraiment grand. N'oubliez pas que les données binaires sont normalement lues en 8 bits bruts mais la pile TCP/IP ne supporte qu'un jeu de caractères de 7 bits à transporter. Donc, toutes vos données sont enveloppées dans un autre code BASE64 qui ajoute environ 40% de frais généraux à vos données, c'est donc 6+ GB. Je ne sais pas si la taille de téléchargement doit inclure cette surcharge, mais vous pouvez essayer d'ajouter ceci à la taille maximale, car selon la documentation, la taille maximale du message devrait être le double de la taille de téléchargement. Je vous suggère également d'utiliser lighttpd + fast-cgi.

+0

L'uploader que j'utilise ici n'est pas seulement une page html. J'utilise un frontal flex pour cela – Shanaka

+1

Peut-être que vous voulez utiliser lighttpd + fastcgi. – Bytemain

+0

Merci pour l'entrée. Je vais vérifier – Shanaka