Hello,
I have configured apache2 for running any .wsgi apps out of ~/public_html
It works for a simple ~/public_html/hello_world.wsgi
Hooray!
However, I am having trouble when my app uses
/usr/bin/python3 -m venv venv
with the simplest of dash apps.
I have so far learned to include in my app.wsgi the following:
site.addsitedir('/home/mec/public_html/dash101/dash101.wsgi')
allowing the app to find the dash modules installed into its venv when run
under apache mod_wsgi.
The app now works from the command line; when run under apache mod_wsgi it
only successfully finds the modules in the venv but then fails with:
[root@hd1991356yb mec]# [Fri Oct 21 01:04:29.974555 2022] [wsgi:info] [pid
69391] mod_wsgi (pid=69391): Create interpreter
'hd1991356yb.sgc.loc|/~mec/dash101/app.wsgi'.
[Fri Oct 21 01:04:29.989457 2022] [wsgi:info] [pid 69391] [client
10.2.20.25:41124] mod_wsgi (pid=69391, process='',
application='hd1991356yb.sgc.loc|/~mec/dash101/app.wsgi'): Loading Python
script file '/home/mec/public_html/dash101/app.wsgi'., referer:
http://hd1991356yb/~mec/dash101/
[Fri Oct 21 01:04:30.891229 2022] [wsgi:error] [pid 69391]
/home/mec/public_html/dash101/app.py:2: UserWarning:
[Fri Oct 21 01:04:30.891279 2022] [wsgi:error] [pid 69391] The
dash_html_components package is deprecated. Please replace
[Fri Oct 21 01:04:30.891289 2022] [wsgi:error] [pid 69391] `import
dash_html_components as html` with `from dash import html`
[Fri Oct 21 01:04:30.891298 2022] [wsgi:error] [pid 69391] import
dash_html_components as html
[Fri Oct 21 01:04:33.661364 2022] [wsgi:error] [pid 69391]
/home/mec/public_html/dash101/app.py:4: UserWarning:
[Fri Oct 21 01:04:33.661397 2022] [wsgi:error] [pid 69391]
[Fri Oct 21 01:04:33.661403 2022] [wsgi:error] [pid 69391]
[Fri Oct 21 01:04:33.661408 2022] [wsgi:error] [pid 69391] The
dash_core_components package is deprecated. Please replace
[Fri Oct 21 01:04:33.661413 2022] [wsgi:error] [pid 69391] `import
dash_core_components as dcc` with `from dash import dcc`
[Fri Oct 21 01:04:33.661417 2022] [wsgi:error] [pid 69391]
[Fri Oct 21 01:04:34.825419 2022] [core:info] [pid 69391] [client
10.2.20.25:41124] AH00128: File does not exist:
/var/www/html/_dash-component-suites/dash/deps/[email protected]_6_2m1666328797.12.1.min.js,
referer: http://hd1991356yb/~mec/dash101/app.wsgi/
I am for now ignoring the deprecation warnings.
I error comes from the app looking for dash's .js files within /var/www/html
(apache's root).
How can my app.wsgi alter this path?
I tried adding this to my app.wsgi:
os.environ["DASH_URL_BASE_PATHNAME"] = "/home/mec/public_html/dash101/"
which does effect where the js files are sought, only not correctly, as the
error is now:
[Fri Oct 21 01:48:29.019458 2022] [core:info] [pid 8597] [client
10.2.20.25:43445] AH00128: File does not exist:
/var/www/html/home/mec/public_html/dash101/_dash-component-suites/dash/deps/[email protected]_6_2m1666328797.12.1.min.js,
referer: http://hd1991356yb/~mec/dash101/app.wsgi
So far, apache2 is configured with:
LoadModule wsgi_module
/usr/lib64/python3.6/site-packages/mod_wsgi/server/mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so
<IfModule mod_userdir.c>
UserDir public_html
</IfModule>
<Directory "/home/*/public_html">
AllowOverride FileInfo AuthConfig Limit Indexes
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec ExecCGI
Require method GET POST OPTIONS
AddHandler cgi-script .cgi
AddHandler wsgi-script .wsgi
</Directory>
I am not issuing any other wSGI configuration directives in my apache2
configuration.
Perhaps I should not expect apache2+userdir+mod_wsgi to work at all...???
All advice as to how to proceed very welcome.
update: I've now
read https://groups.google.com/g/modwsgi/c/Lnik3YHFujA/m/3QRuwEZXP6sJ and
have tried the approach mentioned there:
WSGIRestrictEmbedded On
WSGIDaemonProcess mec
<Directory /home/mec/public_html>
WSGIProcessGroup mec user=mec
</Directory>
I modifed it remove the (now deprecated?) `user=mec` (which causes apache
restart to fail)
But it did not alter the error sequence I am getting.
That advice is from 2011. Perhaps things have changed and there is now a
best approach to this (possibly including a "means for dynamic creation of
daemon
process groups")...???
I also read
https://groups.google.com/g/modwsgi/c/K9hBYI07EsM/m/A_Ao9g4vFgAJ but could
not determine if there was relevant advice there.
Thanks !
~Malcolm COok
--
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/21316f05-cf35-427b-91e9-441200954ce5n%40googlegroups.com.