我想限制对某些媒体文件的访问,以便使用mod_wsgi在django中登录用户。我找不到任何方法。
我设法按照此处的说明限制访问权限:https://docs.djangoproject.com/en/2.1/howto/deployment/wsgi/apache-auth/
但是,如果以这种方式进行操作,则每当要以htaccess弹出式样式访问文件时,都必须再次输入凭据和密码。我不知道如何告诉apache / mod_wsgi已经授权的用户可以访问该特定文件夹,因此可以查看媒体文件,而无需再次输入其凭据。
我目前正在使用相同的Apache服务来托管还托管网站的媒体文件,但我计划将来将媒体文件夹移动到另一台云服务器。
在学习本教程之后,我在apache.conf中使用以下设置:
<Location "/media/secret_folder">
AuthType Basic
AuthName "Access needed to access this media file"
Require valid-user
AuthBasicProvider wsgi
WSGIAuthUserScript /path/to/mysite.com/mysite/wsgi.py
</Location>
我在wsgi.py中使用from django.contrib.auth.handlers.modwsgi import check_password
作为check_password函数。
由于我不知道从哪里开始寻找解决方案,我的猜测要么是创建自己的check_password函数,要么是在Location属性中使用另一个AuthType。
感谢您的帮助