Page tree
Skip to end of metadata
Go to start of metadata

Pod permet 2 systèmes de barre de progression :

  • Le mode "CHUNK", qui ne modifie rien dans nginx, et permet en plus de reprendre un téléchargement en cas de coupure réseau (à condition que l'utilisateur ne recharge pas la page) : Je vous le préconise (retournez alors sur la doc d'install de base => ajouter « USE_CHUNKED_UPLOAD = True » dans settings_local.py).
  • Le module nginx "upload_progress", qui nécessite de recompiler directement les sources d'nginx (je ne vous le recommande pas, cela complique les mises à jour). C'est celui que nous détaillons ici, à titre d'archive :

 Cette doc s'inspire essentiellement de celle que vous trouverez ici : https://www.nginx.com/resources/wiki/modules/upload_progress/


# Ajoutez les lignes suivantes au fichier /etc/nginx/nginx.conf :

# mysite_nginx.conf

http {
    [...]
    # reserve 1MB under the name 'uploads' to track uploads
    upload_progress uploadp 1m;
    [...]
}

Et ajoutez les lignes suivantes au fichier pod_nginx.conf :

server {
    [...]
 
    location ^~ /video_edit {
        track_uploads uploadp 30s
    }
 
    location ^~ /progressbarupload/upload_progress {
        # JSON document rather than JSONP callback, pls
        upload_progress_json_output;
        report_uploads uploadp;
    }
 
    [...]
 
    
    location / {
       [...]
       track_uploads uploadp 30s; 
    }
}


Et ajoutez les ligne suivantes à votre settings_local.py

# https://github.com/ouhouhsami/django-progressbarupload
FILE_UPLOAD_HANDLERS = (
    "progressbarupload.uploadhandler.ProgressBarUploadHandler",
    "django.core.files.uploadhandler.MemoryFileUploadHandler",
    "django.core.files.uploadhandler.TemporaryFileUploadHandler",
)

PROGRESSBARUPLOAD_INCLUDE_JQUERY = False


  • No labels