What were the actual lines that the install-module command output? It would not have been written as that but should have used an absolute path I think, plus may have had a WSGIPythonHome directive as well if mod_wsgi were installed into a Python virtual environment.
Also, what are the exact messages that Apache outputs in the error log when failing to load it? Graham > On 11 Jun 2021, at 5:22 am, Bob Bobsled <[email protected]> wrote: > > Hi Graham, > Unraveling the fedora httpd sub directories is actually not too bad. But the > problem I'm having is getting httpd to load the module via the > /etc/httpd/conf.modules.d directory which has a 10-mod_wsig.conf file place > there which says: > > <IfModule !wsgi_module> > LoadModule wsgi_module > modules/mod_wsgi_py39.cpython-39-x86_64-linux-gnu.so > <http://mod_wsgi_py39.cpython-39-x86_64-linux-gnu.so/> > </IfModule> > > httpd keeps saying it cannot load the module, however it is there because > mod_wsgi-express copied it there. > > I tried maybe finding a SONAME for the .so file, but there doesn't seem to be > one, so I'm not sure what it's hung up on with the naming conventions. I > also set permissions consistent with the other modules. > > Regards, > Bob > > On Wed, Jun 9, 2021 at 11:43 AM Graham Dumpleton <[email protected] > <mailto:[email protected]>> wrote: > Not much I can do to help you with where you should put config when using > system Apache of a specific operating system. CentOS/RHEL, Fedora and > Debian/Ubuntu all set different requirements on where to place things and I > am not familiar with how each does it. Unless someone else on the list can > help with how Fedora does it, best I can suggest is you look at the Fedora > documentation which I would hope explains it. > > Graham > >> On 10 Jun 2021, at 4:52 am, Bob Bobsled <[email protected] >> <mailto:[email protected]>> wrote: >> >> Thank you Graham for your response. Always helpful. >> >> From my virtualenv I can run mod_wsgi-express start-server, and see malt >> whiskey at localhost:8000. >> >> My goal would be to just have the mod run when apache starts, so the box can >> stay running, and folks can access the Django website when they need to >> (although it's only for local access, and we're behind a firewall and only >> using http). >> >> So I'm thinking the manually configured apache approach is what I need to >> do. I tried elevating to root and running mod_wsgi-express install-module: >> >> (myenv) [root@localhost bin]# ./mod_wsgi-express install-module >> LoadModule wsgi_module >> "/usr/lib64/httpd/modules/mod_wsgi-py39.cpython-39-x86_64-linux-gnu.so >> <http://mod_wsgi-py39.cpython-39-x86_64-linux-gnu.so/>" >> >> On fedora34, that copes the library to: >> /etc/httpd/modules >> >> In fedora34 I have httpd directories (all under root ownership): >> /etc/httpd/conf >> /etc/httpd/conf.d >> /etc/httpd/conf.modules.d >> /etc/httpd/logs >> /etc/httpd/modules >> /etc/httpd/run >> /etc/httpd/state >> >> I'm confused about where to place the config file(s) which contains the >> httpd directives such as LoadModule wsgi_module, WSGIPythonHome, >> WSGIDaemonProcess, etc. as well as directory permissions and any virtual >> host setup. >> >> On fedora34: >> /etc/httpd/conf/ contains the general httpd.conf file >> >> /etc/httpd/conf.d is for individual app config files? ex. mod_dnssd.conf, >> php.conf etc. >> "The directory is used in addition to the directory >> /etc/httpd/conf.modules.d/, which contains >> configuration files necessary to load modules." >> >> /etc/httpd/conf.modules.d is for two-digit, numbered .conf files, ex. >> 10-mod_dnssd.conf, etc. >> "This directory contains configuration fragments necessary only to load >> modules. >> Administrators should use the directory "/etc/httpd/conf.d" to modify >> the configuration of httpd, or any modules." >> >> vhosts seems to be in a weird place on Fedora (also under root ownership): >> /usr/share/doc/httpd/httpd-vhosts.conf >> >> Regards, >> Bob >> >> On Tue, Jun 8, 2021 at 12:47 PM Graham Dumpleton <[email protected] >> <mailto:[email protected]>> wrote: >> If the intent is to use mod_wsgi-express to host the application, you don't >> need to install the module into the system wide Apache using >> "install-module". >> >> One you have run pip install, run: >> >> mod_wsgi-express start-server >> >> and verify it starts. Then use mod_wsgi-start start-server with your >> application as explained in: >> >> http://blog.dscpl.com.au/2015/04/introducing-modwsgi-express.html >> <http://blog.dscpl.com.au/2015/04/introducing-modwsgi-express.html> >> http://blog.dscpl.com.au/2015/04/integrating-modwsgi-express-as-django.html >> <http://blog.dscpl.com.au/2015/04/integrating-modwsgi-express-as-django.html> >> http://blog.dscpl.com.au/2015/05/using-modwsgi-express-as-development.html >> <http://blog.dscpl.com.au/2015/05/using-modwsgi-express-as-development.html> >> >> https://www.youtube.com/watch?v=CPz0s1CQsTE&t=7s >> <https://www.youtube.com/watch?v=CPz0s1CQsTE&t=7s> >> >> If you really want to go the way of manually configuring the system Apache >> for mod_wsgi instead, the "install-module" command will only work if done as >> root, so you need to use "sudo" to run it. >> >> Graham >> >>> On 9 Jun 2021, at 5:20 am, Bob Bobsled <[email protected] >>> <mailto:[email protected]>> wrote: >>> >>> Hi Graham, >>> >>> OK. I did that. (I was hoping to avoid virtualenv, since django is the only >>> main python app I'm using on that fedora box, but glad to set one up if >>> that helps). >>> I do have a conflict with the django port for another web app, however. A >>> couple years ago you helped me thru a django setup on a windows box using >>> wamp, >>> where you suggested nip.io <http://nip.io/> for the conflict problem. That >>> seemed to work okay, but I haven't been able to get it worked out on the >>> fedora box yet because >>> still struggling with mod_wsgi part. >>> >>> From the activated virtualenv the mod_wsgi-express install-module command >>> is still giving me a permission error on /usr/lib64... >>> >>> On fedora I have one user, refstudent who is admin. My /opt directory and >>> contents are all under the refstudent user and group and chmod 777 >>> permission >>> on /opt and all contents. /home is under root, but /home/refstudent is >>> under refstudent user and group with 777 permission on all contents. >>> Everything else on the box is under root. My django website is in >>> /var/www/html/mysite. >>> >>> >>> (myenv) [refstudent@localhost myenv]$ mod_wsgi-express install-module >>> Traceback (most recent call last): >>> File "/opt/myenv/bin/mod_wsgi-express", line 33, in <module> >>> sys.exit(load_entry_point('mod-wsgi==4.8.0', 'console_scripts', >>> 'mod_wsgi-express')()) >>> File >>> "/opt/myenv/lib64/python3.9/site-packages/mod_wsgi/server/__init__.py", >>> line 3830, in main >>> cmd_install_module(args) >>> File >>> "/opt/myenv/lib64/python3.9/site-packages/mod_wsgi/server/__init__.py", >>> line 3766, in cmd_install_module >>> shutil.copyfile(where(), target) >>> File "/usr/lib64/python3.9/shutil.py", line 264, in copyfile >>> with open(src, 'rb') as fsrc, open(dst, 'wb') as fdst: >>> PermissionError: [Errno 13] Permission denied: >>> '/usr/lib64/httpd/modules/mod_wsgi-py39.cpython-39-x86_64-linux-gnu.so >>> <http://mod_wsgi-py39.cpython-39-x86_64-linux-gnu.so/>' >>> >>> Regards, >>> Bob >>> >>> On Mon, Jun 7, 2021 at 3:01 PM Graham Dumpleton <[email protected] >>> <mailto:[email protected]>> wrote: >>> You seem to have multiple installs conflicting with each other. Would >>> suggest ensuring you uninstall all the mod_wsgi versions installed in >>> different ways. >>> >>> Once that is done, create a Python virtual environment instead, activate it >>> and pip install mod_wsgi into that. Don't install into system Python or per >>> user Python. >>> >>> When have cleaned up and removed existing installs and tried the virtual >>> environment method come back and indicate what problem you have at that >>> point. >>> >>> Graham >>> >>>> On 8 Jun 2021, at 10:57 am, Bob Bobsled <[email protected] >>>> <mailto:[email protected]>> wrote: >>>> >>>> Hello Graham, >>>> >>>> I have tried unsuccessfully to get mod-wsgi working for Django, and httpd >>>> on fedora34. >>>> >>>> I tried the CMMI method first, downloading/configuring/make/install, but >>>> the instructions give out at the point of knowing what to do after getting >>>> the module into etc/httpd/modules. I'm stuck figuring out how to continue >>>> with where to place a .config file and how to fiddle with vhosts etc. >>>> >>>> So I moved on to dnf install python3-mod_wsgi, but that seems to be an >>>> older version and doesn't have the niceties of mod_wsgi-express. >>>> >>>> Then I tried, as root, pip3 install mod_wsgi, but that seems to bugger the >>>> permissions. >>>> >>>> Fourth try was as user pip3 install --user mod_wsgi but it seems to put >>>> everything in odd places. >>>> For ex. mod_wsgi-express winds up in .local/bin, instead of usr/bin, but >>>> nevertheless when I run it from .loca/bin with the install-module >>>> directive I get permission denied on >>>> /usr/lib64/modules/mod_wsgi-py39.cpython-39-x86_64-linux-gnu.so >>>> <http://mod_wsgi-py39.cpython-39-x86_64-linux-gnu.so/> >>>> >>>> I'd be really grateful for some advice on the best way to get it working >>>> in fedora34. I'm glad to try anyway you might suggest. >>>> >>>> Regards, >>>> Bob >>>> >>>> -- >>>> 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/CALWZDaN7J95EeTVJdty1wobGZ44X_q2utuJv%3DnmXEzVgqNhZQQ%40mail.gmail.com >>>> >>>> <https://groups.google.com/d/msgid/modwsgi/CALWZDaN7J95EeTVJdty1wobGZ44X_q2utuJv%3DnmXEzVgqNhZQQ%40mail.gmail.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] >>> <mailto:[email protected]>. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/modwsgi/FD746244-F6E1-444D-9835-298914C02712%40gmail.com >>> >>> <https://groups.google.com/d/msgid/modwsgi/FD746244-F6E1-444D-9835-298914C02712%40gmail.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] >>> <mailto:[email protected]>. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/modwsgi/CALWZDaND20Qb0pdYnQn2B%3DrLH-%3Dwy70H8qpkaF11xn3_jza5yA%40mail.gmail.com >>> >>> <https://groups.google.com/d/msgid/modwsgi/CALWZDaND20Qb0pdYnQn2B%3DrLH-%3Dwy70H8qpkaF11xn3_jza5yA%40mail.gmail.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] >> <mailto:[email protected]>. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/modwsgi/F763222A-02BA-456E-8DE1-C09878A3CC00%40gmail.com >> >> <https://groups.google.com/d/msgid/modwsgi/F763222A-02BA-456E-8DE1-C09878A3CC00%40gmail.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] >> <mailto:[email protected]>. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/modwsgi/CALWZDaO9e4Nm-zgVUHKrxYYkEGp5hSf1WVGmMs40dN89UMkfJA%40mail.gmail.com >> >> <https://groups.google.com/d/msgid/modwsgi/CALWZDaO9e4Nm-zgVUHKrxYYkEGp5hSf1WVGmMs40dN89UMkfJA%40mail.gmail.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] > <mailto:[email protected]>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/modwsgi/A8B8D4CE-FECF-4AFB-8D7B-B2CE644BF7D4%40gmail.com > > <https://groups.google.com/d/msgid/modwsgi/A8B8D4CE-FECF-4AFB-8D7B-B2CE644BF7D4%40gmail.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] > <mailto:[email protected]>. > To view this discussion on the web visit > https://groups.google.com/d/msgid/modwsgi/CALWZDaMC5aPhFv8s9yUJ7CGbZ0oxZmmPXJOSG0W3V%3DMmiKbRaQ%40mail.gmail.com > > <https://groups.google.com/d/msgid/modwsgi/CALWZDaMC5aPhFv8s9yUJ7CGbZ0oxZmmPXJOSG0W3V%3DMmiKbRaQ%40mail.gmail.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/272FA905-4CC5-4397-9F5F-DCAF961A402E%40gmail.com.
