Your configuration means only a single request can be handled at a time by the 
daemon process, so if you have a very long running request, any other requests 
would block waiting.

Even if not a long running request, a problem may be that you are using a 
Python package that isn't designed to work in a Python sub interpreter. This 
could cause that package to hang and so everything blocks up (same as long 
running request at that point) for that request.

https://modwsgi.readthedocs.io/en/master/user-guides/application-issues.html#python-simplified-gil-state-api
Try the solution described in the docs of forcing the use of the main Python 
interpreter by adding:

    WSGIApplicationGroup %{GLOBAL}

If that doesn't help you will need to work out where your code is blocking. For 
that try adding:

    request-timeout=30

option to WSGIDaemonProcess directive.

This will cause daemon process in your case to restart after 30 seconds when it 
blocks and in doing that will attempt to log to error log file the stack traces 
of where your code was blocked.

Graham

> On 24 Jan 2023, at 3:27 am, A <[email protected]> wrote:
> 
> It keeps timing out and I've been trying to solve it to no avail.
> Here my modwsgi.conf
> 
> <VirtualHost *:80>
>       ServerName localhost
>       ServerAlias ----------.com *.----------.com
>       
>       Define project_name     ----------
>       Define user             -------------
>       
>       Define project_path     /srv/http/fosware
>       Define wsgi_path        /srv/http/fosware/fosware
>       Define environment_path /srv/http/fosware/venv
>       
>       WSGIDaemonProcess ${user}-${project_name} user=${user} group=${user} 
> processes=1 threads=1 python-eggs=/tmp/python-eggs/ 
> python-path=${project_path}:${environment_path}/lib/python2.7/site-packages
>       WSGIProcessGroup ${user}-${project_name}
> 
>       WSGIScriptAlias / ${wsgi_path}/wsgi.py
> 
>       <Directory ${project_path}>
>         <IfVersion < 2.3 >
>         Order allow,deny
>         Allow from all
>         </IfVersion>
>         <IfVersion >= 2.3>
>         Require all granted
>         </IfVersion>
>       </Directory>        
>       
> 
>       Alias /static ${project_path}/static
>       <Directory ${project_path}/static>
>              Require all granted
>              SetHandler None
>              FileETag none
>              Options FollowSymLinks
>       </Directory>
> 
>       Alias /media ${project_path}/media
>       <Directory ${project_path}/media>
>              Require all granted
>              SetHandler None
>              FileETag none
>              Options FollowSymLinks
>              ErrorDocument 404 /error404
>       </Directory>
> 
>       ErrorLog /var/log/httpd/${user}-${project_name}-error.log
>       LogLevel info
>       CustomLog /var/log/httpd/${user}-${project_name}-access.log combined
> </VirtualHost>
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "modwsgi" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected] 
> <mailto:[email protected]>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/modwsgi/02fb2171-ca59-4053-9be3-8ff75e9cf9edn%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/modwsgi/02fb2171-ca59-4053-9be3-8ff75e9cf9edn%40googlegroups.com?utm_medium=email&utm_source=footer>.

-- 
You received this message because you are subscribed to the Google Groups 
"modwsgi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/modwsgi/23758818-6AB0-4FBB-903E-AF251D51655D%40gmail.com.

Reply via email to