9
votes

AttributeError: "WSGIREQUEST 'objet n'a pas d'attribut" session "

Je continue à obtenir cette erreur à des moments aléatoires et quand je touche le fichier Django.wsgi, il ne se fixe que pour se reproduire après quelques heures. Je suis perdu quant à quoi faire. Mon middleware_classes est la suivante:

MIDDLEWARE_CLASSES = (
    'django.middleware.cache.UpdateCacheMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.locale.LocaleMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.middleware.csrf.CsrfResponseMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.middleware.facebookConnectMiddleware.FacebookConnectMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.cache.FetchFromCacheMiddleware',
    'django.contrib.flatpages.middleware.FlatpageFallbackMiddleware',
)


1 commentaires

Avez-vous résolu ceci? Et comment?


4 Réponses :


0
votes

Utilisez-vous Apache? Si tel est le cas, vous devriez probablement redémarrer httpd après avoir modifié le fichier MOD_WSGI. XXX

... ou similaire devrait fonctionner. Si vous voyez toujours le problème, essayez de coller dans le message d'erreur complet.


6 commentaires

Si un redémarrage complet Apache est requis dépend de la manière dont vous utilisez mod_wsgi. Si vous utilisez le mode Daemon, il existe des moyens de redémarrer le code d'application sans redémarrer l'ensemble de Apache. Voir ' code.google.com/p/modwsgi/wiki/reloadingsourcecode ' ' .


Assez vrai. Je diagnostine un peu les symptômes ici: Typiquement, lorsque je vois un problème, c'est parce qu'il est corrigé dans un fil Apache mais pas dans tous ... d'où l'idée de redémarrage. Ça vaut la peine d'essayer :-)


J'ai redémarré Apache et cela semblait faire l'affaire. Merci à vous deux pour votre contribution :-)


Nope .. Le problème est survenu à nouveau. Saisie de l'URL sans une barre oblique de fin donne l'erreur et elle n'est fixée que temporairement lorsque je touche Django.wsgi..qui ..


À quoi ressemble votre fichier WSGI? et vos urls.py?


J'ai le même problème dans le serveur de développement afin que ce ne soit probablement pas liée à Apache.



0
votes

Essayez le fichier de script alternatif de WSGI documenté à la fin de:

http: // blog .dscpl.com.au / 2010/03 / Améliorée-wsgi-script-for-use-with.html

Rapport Retour à la liste Mod_WSGI Si cela aide à savoir que nous essayons de découvrir ce que les problèmes d'alternance du script WSGI résolvent, il peut donc déterminer si un problème réel ou si les utilisateurs n'utilisent pas Django.


0 commentaires

0
votes

Vérifiez si dans votre code, vous avez écrit:

del requérant.session

le correctement sont sont

del demande.Session ["Variable"]


0 commentaires

6
votes

Assurez-vous que la sessionMiddleware est d'abord dans votre Middleware_Classes .


1 commentaires

À partir de Django 2.0 Middleware_Classes est remplacé par middleware - plus ici