$ sudo /etc/init.d/apache2 neustart
%Vor% Benutzername @ Servername Do Nov 04 18:54:37 ~ / public_html / IDM_app
$ sudo tail -n 60 /var/log/apache2/error.log
username @ servername Do Nov 04 18:54:42 ~ / public_html / IDM_app
$ ls -l /home/username/public_html/IDM_app/log/django.osqa.log
Benutzername @ Servername Do Nov 04 19:08:41 ~ / public_html / IDM_app
** $ ls -l ~ / public_html / idm.wsgi **
Benutzername @ Servername Do Nov 04 19:10:50 ~ / public_html / IDM_app
$ cat ~ / public_html / idm.wsgi
Benutzername @ Servername Do Nov 04 19:11:02 ~ / public_html / IDM_app $ whoami
%Vor%Wenn Apache2 die Setup-Datei für den virtuellen Host @ ~ / public_html / idm.wsgi verwendet, versucht der Benutzer nach Meinung des Systems, die Protokolldatei log / django.osqa.log zu schreiben?
Warum kann meine Django-App nicht in ihre Protokolldatei schreiben?
Apache läuft wahrscheinlich als apache
Benutzer, was bedeutet, dass er keinen Schreibzugriff auf die Protokolldatei hat. Es startet gut, weil es nur die wsgi-Datei lesen muss, die Berechtigungen für alle Benutzer gelesen hat. entweder chmod a+w django.osqa.log
oder chown <apache-user> django.osqa.log
.
Hinweis: Die bevorzugte Methode wäre chown
der Datei.
Hinweis 2: Dies ist abhängig von der Distribution, aber da Ubuntu-y aussieht, ist der Apache-Benutzer www-data
.