Hi Graham, 
you're right. Here are parts of the following files:

   1. */apache.conf*
   2. */000-default.conf*
   3. */wsgi.py* #default 
   4. */wsgi.py* #with code from documentation
   5. *Error message* #when I use code from 4.
   

-------------------------------------------------------------------------------------------------------------------
*1. /apache2/apache.conf*

#...
WSGIScriptAlias / /var/www/solutions/mysite/mysite/wsgi.py
WSGIPythonHome /var/www/solutions/venv
WSGIPythonPath /var/www/solutions/mysite

<Directory /var/www/solutions/mysite/mysite>
<Files wsgi.py>
Require all granted
</Files>
</Directory>

WSGIApplicationGroup %{GLOBAL}
<Location "/media/uploads">
    AuthType Basic
    AuthName "Top Secret"
    Require valid-user
    AuthBasicProvider wsgi
    WSGIAuthUserScript /var/www/solutions/mysite/mysite/wsgi.py
</Location>
#...
-------------------------------------------------------------------------------------------------------------------
*2. /apache2/000-default.conf*

<VirtualHost *:80>
        ServerName localhost
        DocumentRoot /var/www/solutions/mysite
        ServerAdmin webmaster at localhost

        Alias /favicon.ico 
/var/www/solutions/mysite/static/tickets/img/ibe.ico
        Alias /media/ /var/www/mysite/media/
        Alias /static/ /var/www/mysite/static/

        <Directory /var/www/mysite/static/>
                Require all granted
        </Directory>

        <Directory /var/www/mysite/media>
                Require all granted
        </Directory>

        <Directory /var/www/solutions/mysite/mysite>
            <Files wsgi.py>
                Require all granted
            </Files>
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

-------------------------------------------------------------------------------------------------------------------
*3. No apache error with default django /mysite/mysite/wsgi.py*

import os

from django.core.wsgi import get_wsgi_application

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings')

application = get_wsgi_application()

-------------------------------------------------------------------------------------------------------------------
*4. When I add the code from the documentation, like this*

import os

os.environ["DJANGO_SETTINGS_MODULE"] = "mysite.settings"

from django.contrib.auth.handlers.modwsgi import check_password

from django.core.handlers.wsgi import WSGIHandler

application = WSGIHandler()

-------------------------------------------------------------------------------------------------------------------
*5. I get the following apache error message, when I reload the page at 
11:02am:*

[Thu Sep 07 11:02:22.125710 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596] mod_wsgi (pid=1310): Failed to exec Python script file 
'/var/www/solutions/mysite/mysite/wsgi.py'. 
[Thu Sep 07 11:02:22.125750 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596] mod_wsgi (pid=1310): Exception occurred processing WSGI 
script '/var/www/solutions/mysite/mysite/wsgi.py'. 
[Thu Sep 07 11:02:22.126119 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596] Traceback (most recent call last): 
[Thu Sep 07 11:02:22.126324 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596]   File "/var/www/solutions/mysite/mysite/wsgi.py", line 
14, in <module> 
[Thu Sep 07 11:02:22.126330 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596]     from django.contrib.auth.handlers.modwsgi import 
check_password 
[Thu Sep 07 11:02:22.126339 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596]   File 
"/var/www/solutions/venv/lib/python3.11/site-packages/django/contrib/auth/handlers/modwsgi.py",
 
line 4, in <module> 
[Thu Sep 07 11:02:22.126341 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596]     UserModel = auth.get_user_model() 
[Thu Sep 07 11:02:22.126343 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596]                 ^^^^^^^^^^^^^^^^^^^^^ 
[Thu Sep 07 11:02:22.126357 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596]   File 
"/var/www/solutions/venv/lib/python3.11/site-packages/django/contrib/auth/__init__.py",
 
line 170, in get_user_model 
[Thu Sep 07 11:02:22.126360 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596]     return django_apps.get_model(settings.AUTH_USER_MODEL, 
require_ready=False) 
[Thu Sep 07 11:02:22.126361 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596] 
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 

[Thu Sep 07 11:02:22.126368 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596]   File 
"/var/www/solutions/venv/lib/python3.11/site-packages/django/apps/registry.py", 
line 203, in get_model 
[Thu Sep 07 11:02:22.126370 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596]     self.check_apps_ready() 
[Thu Sep 07 11:02:22.126375 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596]   File 
"/var/www/solutions/venv/lib/python3.11/site-packages/django/apps/registry.py", 
line 138, in check_apps_ready 
[Thu Sep 07 11:02:22.126377 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596]     raise AppRegistryNotReady("Apps aren't loaded yet.") 
[Thu Sep 07 11:02:22.126390 2023] [wsgi:error] [pid 1310] [client 
127.0.0.1:58596] django.core.exceptions.AppRegistryNotReady: Apps aren't 
loaded yet.

-------------------------------------------------------------------------------------------------------------------



Graham Dumpleton schrieb am Mittwoch, 6. September 2023 um 22:26:52 UTC+2:

> What errors are logged to the Apache error log?
>
> What does the Python code you have added look like?
>
> What does the Apache configuration you have added look like?
>
> Without more information it is hard to guess what the issue may be.
>
> Graham
>
> On 7 Sep 2023, at 2:21 am, Marcel Müller <marcel.b...@gmail.com> wrote:
>
> Hi, 
>
> when I follow the documentation I get an 500 Internal Server Error. 
> I want to protect images (uploads by the user) from the public and other 
> users. 
>
> Everything works until I get to the part like in the subject described. 
>
> When I follow the documentation like "*Finally, edit your WSGI script 
> mysite.wsgi to tie Apache’s authentication to your site’s authentication 
> mechanisms by importing the check_password function:*" the provided code 
> gives me the mentioned 500 error and the entire website is not available 
> anymore. When I stick to the default code in wsgi.py it works and the 
> <location> part works, where I get an apache authentication dialogue.
> But I guess this is not how it is suppose to work. When I type in my 
> credentials the 500 error shows again.
>
> I am a python/django/apache newbie and I am stuck to this for days now. 
>
> Any help would be appreciated. 
>
> Best,
> Marcel
>
> -- 
> 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 modwsgi+u...@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/modwsgi/b26a327c-00ad-439e-b4c3-f1e171a7e03dn%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/modwsgi/b26a327c-00ad-439e-b4c3-f1e171a7e03dn%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 modwsgi+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/modwsgi/a07c77af-cf21-4fff-90fa-e6941a09af2cn%40googlegroups.com.

Reply via email to