Graham,

Requested info below. I reset the configuration to how it is working on our 
2.2 install.

httpd.conf


LoadModule wsgi_module 
"/usr/local/lib/python2.7/site-packages/mod_wsgi-4.6.3-py2.7-linux-x86_64.egg/mod_wsgi/server/mod_wsgi-py27.so"

<VirtualHost 192.168.1.2:443>
DocumentRoot "/opt/rh/httpd24/root/var/www/html/sitea/project_name"
ServerName site.name.here
Alias /static/ /opt/rh/httpd24/root/var/html/sitea/static/

WSGIDaemonProcess project_name 
python-path=/opt/rh/httpd24/root/var/www/html/sitea 
WSGIProcessGroup project_name
WSGIScriptAlias / 
/opt/rh/httpd24/root/var/www/html/sitea/project_name/wsgi.py
WSGIApplicationGroup %{GLOBAL}

DocumentRoot /opt/rh/httpd24/root/var/www/html/sitea

---- 

error_log

[Tue Mar 27 12:16:03.658057 2018] [core:notice] [pid 11475] SELinux policy 
enabled; httpd running as context unconfined_u:system_r:httpd_t:s0
[Tue Mar 27 12:16:03.733379 2018] [suexec:notice] [pid 11475] AH01232: 
suEXEC mechanism enabled (wrapper: /opt/rh/httpd24/root/usr/sbin/suexec)
[Tue Mar 27 12:16:03.904147 2018] [ssl:notice] [pid 11478] AH01884: 
Operating in SSL FIPS mode
[Tue Mar 27 12:16:03.904401 2018] [socache_shmcb:info] [pid 11478] AH00830: 
Shared memory socache initialised
[Tue Mar 27 12:16:03.904417 2018] [ssl:info] [pid 11478] AH01887: Init: 
Initializing (virtual) servers for SSL
[Tue Mar 27 12:16:03.908292 2018] [ssl:info] [pid 11478] AH01876: 
mod_ssl/2.4.27 compiled against Server: Apache/2.4.27, Library: 
OpenSSL/1.0.1e
[Tue Mar 27 12:16:03.908338 2018] [http2:info] [pid 11478] AH03090: 
mod_http2 (v1.10.7, feats=CHPRIO+SHA256, nghttp2 1.7.1), initializing...
[Tue Mar 27 12:16:03.908422 2018] [http2:warn] [pid 11478] AH10034: The mpm 
module (prefork.c) is not supported by mod_http2. The mpm determines how 
things are processed in your server. HTTP/2 has more demands in this regard 
and the currently selected mpm will just not do. This is an advisory 
warning. Your server will continue to work, but the HTTP/2 protocol will be 
inactive.
[Tue Mar 27 12:16:03.911169 2018] [wsgi:info] [pid 11480] mod_wsgi 
(pid=11480): Starting process 'project_name' with uid=503, gid=503 and 
threads=15.
[Tue Mar 27 12:16:03.911908 2018] [wsgi:info] [pid 11480] mod_wsgi 
(pid=11480): Initializing Python.
[Tue Mar 27 12:16:03.912771 2018] [wsgi:info] [pid 11481] mod_wsgi 
(pid=11481): Initializing Python.
[Tue Mar 27 12:16:03.913749 2018] [wsgi:info] [pid 11482] mod_wsgi 
(pid=11482): Initializing Python.
[Tue Mar 27 12:16:03.914188 2018] [wsgi:info] [pid 11487] mod_wsgi 
(pid=11487): Initializing Python.
[Tue Mar 27 12:16:03.914551 2018] [mpm_prefork:notice] [pid 11478] AH00163: 
Apache/2.4.27 (Red Hat) OpenSSL/1.0.1e-fips mod_wsgi/4.6.3 Python/2.7 
configured -- resuming normal operations
[Tue Mar 27 12:16:03.914572 2018] [mpm_prefork:info] [pid 11478] AH00164: 
Server built: Sep 20 2017 09:57:20
[Tue Mar 27 12:16:03.914588 2018] [core:notice] [pid 11478] AH00094: 
Command line: '/opt/rh/httpd24/root/usr/sbin/httpd'
[Tue Mar 27 12:16:03.914797 2018] [wsgi:info] [pid 11492] mod_wsgi 
(pid=11492): Initializing Python.
[Tue Mar 27 12:16:03.915656 2018] [wsgi:info] [pid 11497] mod_wsgi 
(pid=11497): Initializing Python.
[Tue Mar 27 12:16:03.930968 2018] [wsgi:info] [pid 11481] mod_wsgi 
(pid=11481): Attach interpreter ''.
[Tue Mar 27 12:16:03.932373 2018] [wsgi:info] [pid 11487] mod_wsgi 
(pid=11487): Attach interpreter ''.
[Tue Mar 27 12:16:03.932402 2018] [wsgi:info] [pid 11482] mod_wsgi 
(pid=11482): Attach interpreter ''.
[Tue Mar 27 12:16:03.932611 2018] [wsgi:info] [pid 11492] mod_wsgi 
(pid=11492): Attach interpreter ''.
[Tue Mar 27 12:16:03.932627 2018] [wsgi:info] [pid 11481] mod_wsgi 
(pid=11481): Imported 'mod_wsgi'.
[Tue Mar 27 12:16:03.933738 2018] [wsgi:info] [pid 11497] mod_wsgi 
(pid=11497): Attach interpreter ''.
[Tue Mar 27 12:16:03.934065 2018] [wsgi:info] [pid 11487] mod_wsgi 
(pid=11487): Imported 'mod_wsgi'.
[Tue Mar 27 12:16:03.934171 2018] [wsgi:info] [pid 11482] mod_wsgi 
(pid=11482): Imported 'mod_wsgi'.
[Tue Mar 27 12:16:03.934290 2018] [wsgi:info] [pid 11492] mod_wsgi 
(pid=11492): Imported 'mod_wsgi'.
[Tue Mar 27 12:16:03.935374 2018] [wsgi:info] [pid 11497] mod_wsgi 
(pid=11497): Imported 'mod_wsgi'.
[Tue Mar 27 12:16:25.937362 2018] [wsgi:info] [pid 11550] mod_wsgi 
(pid=11550): Initializing Python.
[Tue Mar 27 12:16:25.949578 2018] [wsgi:info] [pid 11550] mod_wsgi 
(pid=11550): Attach interpreter ''.
[Tue Mar 27 12:16:25.950553 2018] [wsgi:info] [pid 11550] mod_wsgi 
(pid=11550): Imported 'mod_wsgi'.
[Tue Mar 27 12:16:30.941339 2018] [core:notice] [pid 11478] AH00052: child 
pid 11480 exit signal Segmentation fault (11)
[Tue Mar 27 12:16:30.941397 2018] [wsgi:info] [pid 11478] mod_wsgi 
(pid=11480): Process 'project_name' has died, deregister and restart it.
[Tue Mar 27 12:16:30.941411 2018] [wsgi:info] [pid 11478] mod_wsgi 
(pid=11480): Process 'project_name' terminated by signal 11
[Tue Mar 27 12:16:30.941423 2018] [wsgi:info] [pid 11478] mod_wsgi 
(pid=11480): Process 'project_name' has been deregistered and will no 
longer be monitored.
[Tue Mar 27 12:16:30.942513 2018] [wsgi:info] [pid 11570] mod_wsgi 
(pid=11570): Starting process 'project_name' with uid=503, gid=503 and 
threads=15.
[Tue Mar 27 12:16:30.943062 2018] [wsgi:info] [pid 11570] mod_wsgi 
(pid=11570): Initializing Python.
[Tue Mar 27 12:16:48.959264 2018] [core:notice] [pid 11478] AH00052: child 
pid 11570 exit signal Segmentation fault (11)
[Tue Mar 27 12:16:48.959306 2018] [wsgi:info] [pid 11478] mod_wsgi 
(pid=11570): Process 'project_name' has died, deregister and restart it.
[Tue Mar 27 12:16:48.959317 2018] [wsgi:info] [pid 11478] mod_wsgi 
(pid=11570): Process 'project_name' terminated by signal 11
[Tue Mar 27 12:16:48.959327 2018] [wsgi:info] [pid 11478] mod_wsgi 
(pid=11570): Process 'project_name' has been deregistered and will no 
longer be monitored.
[Tue Mar 27 12:16:48.960440 2018] [wsgi:info] [pid 11607] mod_wsgi 
(pid=11607): Starting process 'project_name' with uid=503, gid=503 and 
threads=15.
[Tue Mar 27 12:16:48.960991 2018] [wsgi:info] [pid 11607] mod_wsgi 
(pid=11607): Initializing Python.
[Tue Mar 27 12:17:14.221919 2018] [wsgi:info] [pid 11478] mod_wsgi 
(pid=11607): Process 'project_name' to be deregistered, as server is 
restarting or being shutdown.
[Tue Mar 27 12:17:14.221969 2018] [wsgi:info] [pid 11478] mod_wsgi 
(pid=11607): Process 'project_name' has been deregistered and will no 
longer be monitored.
[Tue Mar 27 12:17:14.222039 2018] [wsgi:info] [pid 11550] mod_wsgi 
(pid=11550): Destroying interpreters.
[Tue Mar 27 12:17:14.222065 2018] [wsgi:info] [pid 11550] mod_wsgi 
(pid=11550): Cleanup interpreter ''.
[Tue Mar 27 12:17:14.222112 2018] [wsgi:info] [pid 11492] mod_wsgi 
(pid=11492): Destroying interpreters.
[Tue Mar 27 12:17:14.222139 2018] [wsgi:info] [pid 11492] mod_wsgi 
(pid=11492): Cleanup interpreter ''.
[Tue Mar 27 12:17:14.222139 2018] [wsgi:info] [pid 11497] mod_wsgi 
(pid=11497): Destroying interpreters.
[Tue Mar 27 12:17:14.222173 2018] [wsgi:info] [pid 11497] mod_wsgi 
(pid=11497): Cleanup interpreter ''.
[Tue Mar 27 12:17:14.222179 2018] [wsgi:info] [pid 11481] mod_wsgi 
(pid=11481): Destroying interpreters.
[Tue Mar 27 12:17:14.222208 2018] [wsgi:info] [pid 11481] mod_wsgi 
(pid=11481): Cleanup interpreter ''.
[Tue Mar 27 12:17:14.223406 2018] [wsgi:info] [pid 11487] mod_wsgi 
(pid=11487): Destroying interpreters.
[Tue Mar 27 12:17:14.223435 2018] [wsgi:info] [pid 11487] mod_wsgi 
(pid=11487): Cleanup interpreter ''.
[Tue Mar 27 12:17:14.224795 2018] [wsgi:info] [pid 11482] mod_wsgi 
(pid=11482): Destroying interpreters.
[Tue Mar 27 12:17:14.224825 2018] [wsgi:info] [pid 11482] mod_wsgi 
(pid=11482): Cleanup interpreter ''.
[Tue Mar 27 12:17:14.228216 2018] [wsgi:info] [pid 11550] mod_wsgi 
(pid=11550): Terminating Python.
[Tue Mar 27 12:17:14.228215 2018] [wsgi:info] [pid 11492] mod_wsgi 
(pid=11492): Terminating Python.
[Tue Mar 27 12:17:14.228416 2018] [wsgi:info] [pid 11497] mod_wsgi 
(pid=11497): Terminating Python.
[Tue Mar 27 12:17:14.228487 2018] [wsgi:info] [pid 11481] mod_wsgi 
(pid=11481): Terminating Python.
[Tue Mar 27 12:17:14.228864 2018] [wsgi:info] [pid 11487] mod_wsgi 
(pid=11487): Terminating Python.
[Tue Mar 27 12:17:14.230253 2018] [wsgi:info] [pid 11482] mod_wsgi 
(pid=11482): Terminating Python.
[Tue Mar 27 12:17:14.230969 2018] [wsgi:info] [pid 11492] mod_wsgi 
(pid=11492): Python has shutdown.
[Tue Mar 27 12:17:14.230975 2018] [wsgi:info] [pid 11550] mod_wsgi 
(pid=11550): Python has shutdown.
[Tue Mar 27 12:17:14.231121 2018] [wsgi:info] [pid 11497] mod_wsgi 
(pid=11497): Python has shutdown.
[Tue Mar 27 12:17:14.231637 2018] [wsgi:info] [pid 11487] mod_wsgi 
(pid=11487): Python has shutdown.
[Tue Mar 27 12:17:14.231642 2018] [wsgi:info] [pid 11481] mod_wsgi 
(pid=11481): Python has shutdown.
[Tue Mar 27 12:17:14.233003 2018] [wsgi:info] [pid 11482] mod_wsgi 
(pid=11482): Python has shutdown.
[Tue Mar 27 12:17:14.239766 2018] [core:info] [pid 11478] AH00096: removed 
PID file /opt/rh/httpd24/root/var/run/httpd/httpd.pid (pid=11478)
[Tue Mar 27 12:17:14.239786 2018] [mpm_prefork:notice] [pid 11478] AH00169: 
caught SIGTERM, shutting down

---

ssl_error_log

SSL INFO REDACTED
[Tue Mar 27 12:16:03.930991 2018] [wsgi:info] [pid 11480] mod_wsgi 
(pid=11480): Attach interpreter ''.
[Tue Mar 27 12:16:03.931207 2018] [wsgi:info] [pid 11480] mod_wsgi 
(pid=11480): Adding '/opt/rh/httpd24/root/var/www/html/sitea' to path.
[Tue Mar 27 12:16:03.933442 2018] [wsgi:info] [pid 11480] mod_wsgi 
(pid=11480): Imported 'mod_wsgi'.

[Tue Mar 27 12:16:30.010940 2018] [wsgi:info] [pid 11480] [remote 
192.168.1.100:21802] mod_wsgi (pid=11480, process='project_name', 
application=''): Loading Python script file 
'/opt/rh/httpd24/root/var/www/html/sitea/project_name/wsgi.py'.
[Tue Mar 27 12:16:30.351474 2018] [wsgi:error] [pid 11487] [client 
192.168.1.100:21802] Truncated or oversized response headers received from 
daemon process 'project_name': 
/opt/rh/httpd24/root/var/www/html/sitea/project_name/wsgi.py
[Tue Mar 27 12:16:30.961282 2018] [wsgi:info] [pid 11570] mod_wsgi 
(pid=11570): Attach interpreter ''.
[Tue Mar 27 12:16:30.961504 2018] [wsgi:info] [pid 11570] mod_wsgi 
(pid=11570): Adding '/opt/rh/httpd24/root/var/www/html/sitea' to path.
[Tue Mar 27 12:16:30.963586 2018] [wsgi:info] [pid 11570] mod_wsgi 
(pid=11570): Imported 'mod_wsgi'.
[Tue Mar 27 12:16:47.982091 2018] [wsgi:info] [pid 11570] [remote 
192.168.1.100:21804] mod_wsgi (pid=11570, process='project_name', 
application=''): Loading Python script file 
'/opt/rh/httpd24/root/var/www/html/sitea/project_name/wsgi.py'.
[Tue Mar 27 12:16:48.472366 2018] [wsgi:error] [pid 11492] [client 
192.168.1.100:21804] Truncated or oversized response headers received from 
daemon process 'project_name': 
/opt/rh/httpd24/root/var/www/html/sitea/project_name/wsgi.py
[Tue Mar 27 12:16:48.979670 2018] [wsgi:info] [pid 11607] mod_wsgi 
(pid=11607): Attach interpreter ''.
[Tue Mar 27 12:16:48.979908 2018] [wsgi:info] [pid 11607] mod_wsgi 
(pid=11607): Adding '/opt/rh/httpd24/root/var/www/html/sitea' to path.
[Tue Mar 27 12:16:48.982001 2018] [wsgi:info] [pid 11607] mod_wsgi 
(pid=11607): Imported 'mod_wsgi'.
[Tue Mar 27 12:17:14.221963 2018] [wsgi:info] [pid 11607] mod_wsgi 
(pid=11607): Shutdown requested 'project_name'.
[Tue Mar 27 12:17:14.222210 2018] [wsgi:info] [pid 11607] mod_wsgi 
(pid=11607): Stopping process 'project_name'.
[Tue Mar 27 12:17:14.222230 2018] [wsgi:info] [pid 11607] mod_wsgi 
(pid=11607): Destroying interpreters.
[Tue Mar 27 12:17:14.222242 2018] [wsgi:info] [pid 11607] mod_wsgi 
(pid=11607): Cleanup interpreter ''.
[Tue Mar 27 12:17:14.228896 2018] [wsgi:info] [pid 11607] mod_wsgi 
(pid=11607): Terminating Python.
[Tue Mar 27 12:17:14.232279 2018] [wsgi:info] [pid 11607] mod_wsgi 
(pid=11607): Python has shutdown.
[Tue Mar 27 12:17:14.232304 2018] [wsgi:info] [pid 11607] mod_wsgi 
(pid=11607): Exiting process 'project_name'.

The site is connecting via SSL and verifying client certificate before 
forwarding to the Django app. The SSL portion works as expected. Once it 
validates the client certificate, it receives a 500 error. I've removed the 
ssl information for privacy reasons.

As far as the code content under the directory, I understand it isn't a 
best practice, but it isn't an aspect I can change at the moment. System is 
operating in a corporate offline network.

On Tuesday, March 27, 2018 at 6:00:00 AM UTC-4, Graham Dumpleton wrote:
>
>
>
> On 27 Mar 2018, at 8:35 pm, Eric Sears <[email protected] <javascript:>> 
> wrote:
>
>>
>> Are you modifying sys.path in the WSGI script file so Python will know 
>> where your project code is? 
>>
>> You have to excuse me as I didn't build the Django app. The main wsgi.py 
> calls the site.settings file. In the settings.py the closest thing I could 
> find is:
>
> BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
>
>
>> Do you mean using: 
>>
>>     WSGIApplicationGroup %{GLOBAL} 
>>
>> It is preferable you use that regardless. 
>>
> The information in the virtual host settings is:
>
>
> Which is different to what you showed before.
>
>
> WSGIDaemonProcess projectname 
> python-path=/opt/rh/httpd24/root/var/www/html/sitea/project_name
>
>
> The python-path setting here is an alternative for setting sys.path in the 
> wsgi.py file.
>
> Note that it looks like you have placed all your code under DocumentRoot 
> directory. That is:
>
>     /opt/rh/httpd24/root/var/www/html
>
> That is a bad idea. If someone commented out WSGIScriptAlias, your code 
> can be downloaded, including any passwords of the secret key in the Django 
> settings file.
>
> You should not put your Django project code under the directory specified 
> by DocumentRoot.
>
> WSGIProcessGroup project_name
> WSGIScriptAlias / 
> /opt/rh/httpd24/root/var/www/html/sitea/project_name/wsgi.py 
> application-group=%{GLOBAL}
>
>
> So using application-group instead of WSGIApplicationGroup.
>
> Can you ensure you have set: 
>>
>>     LogLevel info 
>>
>> in Apache configuration. 
>>
>> LogLevel is currently set to debug as I wanted to get as much info as 
> possible.
>
>
> Using info is sufficient. Plus the logs below indicate you might not be 
> using debug when that request was made as I would have expected there to be 
> more information than that, including some debug message. Anyway, doesn't 
> matter, whether debug messages show may depend on other Apache modules 
> being used. Extra messages from mod_wsgi may only get displayed if also 
> have WSGIVerboseDebugging directive set to On, but don't need to see them.
>
> This will cause mod_wsgi to log more about process restarts, script 
>> loading etc. I need to see the more detailed logging from the log file 
>> around time the request was made. If you are using VirtualHost specific 
>> log, also need to see any errors from main  
>
> Apache error log at the same time. 
>>
>  
> This is a disconnected system and I can't export the logs directly. 
> Hopefully the info below is what you need:
>
> [wsgi:info] [pid 27937:tid #] mod_wsgi (pid=27937): Attach interpreter ''.
> [wsgi.info] [pid 27937:tid #] mod_wsgi (pid=27937): Adding 
> '/opt/rh/httpd24/root/var/www/html/sitea' to path
> [wsgi:debug] - Spawns 15 threads in daemon process ' project_name'
> [wsgi:info] [pid 27937:tid #] [remote 192.168.1.100] mod_wsgi (pid 27937, 
> process='project_name', application=''): Loading Python script file 
> '/opt/rh/httpd24/root/var/www/html/sitea/project_name/wsgi.py'
> [wsgi:error] [pid 27981] [client 192.168.1.100] Truncated or oversized 
> response headers received from damon process 'project_name': 
> /opt/rh/httpd24/root/var/www/html/sitea/project_name/wsgi.py, referrer 
> https://site.com/
>
>
> Are you sure there is nothing after this?
>
> Can you do more than the one request and show me error log messages from 
> across the two requests.
>
> Are you sure there are no messages showing a message like 'Segmentation 
> Fault'? Does the process ID shown in the 'Loading Python script file' 
> message in logs still exist after you make the request?
>
> Does your application return a WWW-Authenticate header with a really long 
> authentication challenge string?
>
> Does your application return any other response headers with really long 
> values?
>
> If yes to either of last two questions, try adding:
>
>     header-buffer-size=16384
>
> option to WSGIDaemonProcess directive.
>
> Graham
>
>

-- 
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 post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/modwsgi.
For more options, visit https://groups.google.com/d/optout.

Reply via email to