Dans ce qui semble être un événement aléatoire, un site est tombé en panne ce soir et après avoir jeté un coup d'œil aux journaux d'erreurs d'Apache, il s'agissait de ce problème :
(13)Permission denied: mod_wsgi (pid=2751): Unable to connect to WSGI daemon process 'mysite.com-ssl' on '/var/run/apache2/wsgi.2579.0.2.sock' after multiple attempts.
Maintenant, je lis le Problèmes de configuration wiki pour mod_wsgi, et la correction semble raisonnable. Il n'est pas possible d'écrire dans ce répertoire, une alternative doit donc être spécifiée avec la commande WSGISocketPrefix
Je me suis donc mis en route :
WSGISocketPrefix /var/run/wsgi
Il corrige le problème et le site peut se charger après un redémarrage d'Apache.
Cependant, je suis très curieux de savoir pourquoi ce répertoire a cessé d'être disponible en écriture. Ai-je raté quelque chose ? Le /var/run/apache2
appartient à root:root
mais les nouveaux sockets qui fonctionnent désormais sous le nom de /var/run/wsgi*.sock
son www-data:root
.. Il y a eu un redémarrage du serveur, mais c'est tout. Peut-être que quelque chose prend maintenant les permissions sur ce répertoire au démarrage ?
Des idées ? Merci de votre compréhension.