I have deployed a Django 1.3.1 app on apache2 in my machine using mod_wsgi.I used to log some values in the app using python logging module and these were written to a mylog.txt file in the application base directory.However I deleted this file and commented out every log() call in my code.In the django standalone server the app runs without any problem.But when I start the app in apache,I get this apache log entry
[Sat Mar 31 09:34:40 2012] [error] [client 127.0.0.1] TemplateSyntaxError: Caught IOError while rendering: [Errno 13] Permission denied: '/home/me/dev/python/django/myapp/mylog.txt'
I cannot understand why this happens ,since I commented out every log related line in the code and even the variable which tells the logfile’s name in settings.py
I tried clearing the cache..but even that didn’t help
can someone help me figure this out?
The module details are as below
Apache/2.0.63 (Unix) DAV/2 mod_wsgi/3.3 Python/2.6.5 Server at 127.0.0.1 Port 80
what are the unix/linux permissions on your mylog.txt file?
ls -la /home/me/dev/python/django/myapp/mylog.txtshould show the unix/linux perms. Can you paste the results of this command? (update it in your question above if possible)Apache2 user on your system (depending on which linux distro of if you use Mac) are most likely ‘www-data’ or ‘http’. You will need to make sure that mylog.txt has the correct unix/linux owner and the correct permissions mode so that apache2 can write into this log file.