[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.python

RE: apache/mod_wsgi daemon mode

Scott SA

2/3/2008 11:34:00 PM

On 2/3/08, Brian Smith (brian@briansmith.org) wrote:

>Scott SA wrote:
>> I am trying to configure mod_wsgi to run in daemon mode with
>> Apache. I can easily get it to run 'normally' under Apache
>> but I obtain permission errors _or_ process-failures in
>> daemon mode. Specifically:
>>
>> ... (13)Permission denied: mod_wsgi (pid=26962): Unable
>> to connect
>> to WSGI daemon process '<process-name>' on
>> '/etc/httpd/logs/wsgi.26957.0.1.sock' after multiple attempts.
>
>> The host is Apache 2.2n under CentOS 5.1 i386 running Python 2.4
>
>Try again after "sudo /usr/sbin/setenforce 0". If it works with SELinux
>disabled then you will have to do a bit more work to get it working with
>SELinux enabled. I suggest creating a directory that is labeled with the
>Apache read/write type, and setting the WSGI socket prefix such that the
>domain sockets will get put in that directory. If that doesn't solve the
>problem then use the procedures in the SELinux documentation to create a
>security policy. And then, please share it with me. :)

I disabled SELinux during system install and have double-checked it is not running.

>Also, mod_wsgi has its own mailing list:
> http://groups.google.com/gro...

I had previoiusly done what I _thought_ was a good job of searching the wsgi mailing list (really!). A reworking of my google search parameters finally yeildd a helpful thread:

<http://groups.google.com/gro.../browse_thread/thread/6d3a2f4d7c294dc/ba5cd5055bb5cc62?lnk=gst&q=daemon+unable-to-connect#ba5cd5055bb5cc62>

The problem was WSGI trying to create its .sock file in /var/log/httpd but failing and therefore not running at all. The user I had specified did not have enough permissions to do so (part of the point _of_ running in daemon mode, LOL). Oddly, I had attempted to grant the permissions for the user but see now there was an error in how I did that... oops.

By adding the following to my config:

WSGISocketPrefix /tmp/wsgi

We now have successss!


So my config now looks like:

WSGISocketPrefix /tmp/wsgi

<VirtualHost host.domain.com:80>
ServerName host.domain.com

WSGIDaemonProcess <process-name> user=<user> group=<group> threads=10 maximum-requests=500

WSGIScriptAlias /something /path/to/<script>.wsgi

<Directory /path/to/<script>.wsgi>
WSGIApplicationGroup <user>
WSGIProcessGroup <process-name>

Order deny,allow
Allow from all
</Directory>


Thanks, Brian, for pointing me back to the modwsgi list for another look!

Scott
1 Answer

Graham.Dumpleton

2/3/2008 11:40:00 PM

0

On Feb 4, 10:33 am, Scott SA <py...@rscorp.ab.ca> wrote:
> On 2/3/08, Brian Smith (br...@briansmith.org) wrote:
> >Scott SA wrote:
> >> I am trying to configure mod_wsgi to run in daemon mode with
> >> Apache. I can easily get it to run 'normally' under Apache
> >> but I obtain permission errors _or_ process-failures in
> >> daemon mode. Specifically:
>
> >> ... (13)Permission denied: mod_wsgi (pid=26962): Unable
> >> to connect
> >> to WSGI daemon process '<process-name>' on
> >> '/etc/httpd/logs/wsgi.26957.0.1.sock' after multiple attempts.
>
> ...
>
> I had previoiusly done what I _thought_ was a good job of searching the wsgi mailing list (really!). A reworking of my google search parameters finally yeildd a helpful thread:
>
> <http://groups.google.com/group/modwsgi/browse_thread/thread/6d3a2f...
>
> The problem was WSGI trying to create its .sock file in /var/log/httpd but failing and therefore not running at all. The user I had specified did not have enough permissions to do so (part of the point _of_ running in daemon mode, LOL). Oddly, I had attempted to grant the permissions for the user but see now there was an error in how I did that... oops.
>
> By adding the following to my config:
>
> WSGISocketPrefix /tmp/wsgi

Also documented in:

http://code.google.com/p/modwsgi/wiki/Configura...

Since you have given a real live example error message from logs for
when it goes wrong, I'll be able to include this in the documentation.
That may make it easier for others to find that page when they do a
Google search. At the moment the page only mentioned that you would
get a '503 Service Temporarily Unavailable' response in browser.

Graham

> We now have successss!
>
> So my config now looks like:
>
> WSGISocketPrefix /tmp/wsgi
>
> <VirtualHost host.domain.com:80>
> ServerName host.domain.com
>
> WSGIDaemonProcess <process-name> user=<user> group=<group> threads=10 > maximum-requests=500
>
> WSGIScriptAlias /something /path/to/<script>.wsgi
>
> <Directory /path/to/<script>.wsgi>
> WSGIApplicationGroup <user>
> WSGIProcessGroup <process-name>
>
> Order deny,allow
> Allow from all
> </Directory>
>
> Thanks, Brian, for pointing me back to the modwsgi list for another look!
>
> Scott