It was SELinux, enabled by default on CentOS 5.2 (apparently). The man page for stat(2) didn't mention SELinux, but some web page I stumbled on did.
I started to dig into chcon(1) and all that -- geez, it must be a new century -- got it to find my application, then django itself, then another python module it needed (pytz), and then it barfed trying to talk to postgresql on a UNIX-domain socket. So I gave up and disabled SELinux (SELINUX=permissive in /etc/selinux/config). I'm on deadline, and the system is not exposed. Maybe I'll come back to this in a month or so. It's also interesting that I could get Apache to get around "mandatory" access controls by running it as "sudo /usr/sbin/httpd -X". --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---