IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Django Python Discussion :

Error 500 - Upload File | ngnix / Gunicorn / OVH


Sujet :

Django Python

  1. #1
    Candidat au Club
    Femme Profil pro
    Chef de projet en SSII
    Inscrit en
    Octobre 2020
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Octobre 2020
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Error 500 - Upload File | ngnix / Gunicorn / OVH
    Bonjour,

    Je viens vous demandez de l'aide car j'ai beau avoir fouiller tout ce que je pouvais sur le web, je n'ai pas trouvé de réponses ou de solutions à mon problème.

    En effet, j'ai une page qui me sert à télécharger des fichiers excel ou pdf sur mon site web. En local, tout fonctionne parfaitement, mais une fois déployer j'ai une erreur 500 : internal error server.

    Pour information, j'envoi mes fichiers dans un dossier "/media/". Je ne sais pas comment débug cette erreur d'autant plus que l'envoi ce fait via Ajax.
    Si vous aviez de suggestion sur l'origine du problème je suis à votre écoute. :)

    J'utilise ngnix et Gunicorn et du coup Django sous un server VPS OVH

    CODE:

    Settings.py :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    ...
    DEBUG = False
    ...
    ...
    STATIC_ROOT = os.path.join(BASE_DIR, 'static')
    STATIC_URL = '/static/'
     
    MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
    MEDIA_URL = '/media/'
    ...
    views.py :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    ...
    if request.method == "POST" and request.is_ajax:
       uploaded_file = request.FILES['doc_file']
       title = request.POST['doc_name']
     
       fs = FileSystemStorage()
       filename = fs.save(title,uploaded_file)
       url_doc = fs.url(filename)
     
       data["success"] = True
       return JsonResponse(data,status=200)
    ...
    url.py :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    ...
    urlpatterns = [
        path('', home_view),
        path('admin/', admin.site.urls),
        path('app1/', include('app1.urls', namespace='app1')),
        path('app2/', include('app2.urls', namespace='app2')),
        path('app3/', include('app3.urls', namespace='app3')), 
    ]
     
    if settings.DEBUG:
        urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
    ...

  2. #2
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 951
    Points : 9 280
    Points
    9 280
    Par défaut
    hello,
    je ne connais pas django mais en général quand il y a une erreur interne 500 c'est qu'il y a une exception dans le programme qui s'exécute derrière (que ce soit par exemple du php, du python) donc il faut que tu arrives à trouver pourquoi il y a quelque chose qui ne fonctionne pas dans ton programme python. Cela peut être un accès à un répertoire, un problème de droit etc... Je vois que tu as une variable DEBUG à false dans ton script Settings.py. Tu peux essayer de mettre cette variable à true pour voir si tu n'as pas plus d'informations sur l'erreur qui se produit dans le traitement en python.
    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  3. #3
    Expert éminent
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    3 823
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 823
    Points : 7 119
    Points
    7 119
    Par défaut
    Bonjour,

    Il faudrait voir dans le settings.py si ta constante TEMPLATES contient bien dans la liste des context_processors le processor media : 'django.template.context_processors.media'
    Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
    La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

Discussions similaires

  1. [AJAX] Erreur 500 Ajax+php upload file sur serveur ubuntu
    Par Jordan-Tess dans le forum jQuery
    Réponses: 0
    Dernier message: 02/12/2014, 11h23
  2. [Upload] Move Uploaded File (OVH)
    Par Jules-67 dans le forum Langage
    Réponses: 7
    Dernier message: 26/04/2008, 09h57
  3. [SERVLET][STRUTS]Error 500--Internal Server Error
    Par Devil666 dans le forum Struts 1
    Réponses: 7
    Dernier message: 27/06/2005, 13h07
  4. [Servlet] error 500
    Par phoebe dans le forum Servlets/JSP
    Réponses: 10
    Dernier message: 06/05/2004, 12h37
  5. redirection impossible => error 500 !
    Par alfigor dans le forum ASP
    Réponses: 4
    Dernier message: 26/04/2004, 10h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo