我已经完成了第一个基于django的网站,我已准备好在liveserver上部署。但是,我不希望这个网站在调整和测试时现在对公众可见。
在PHP网站上,我总是通过.htaccess使用基本的http身份验证来进行最后的更改。这是一个两个班轮,拒绝访问整个网站。
理想情况下,我想运行这样的环境:
可以使用django / apache2 / mod_wsgi吗?
答案 0 :(得分:3)
您可以为虚拟主机dev.mydomain.com
设置基本身份验证。请查看http://httpd.apache.org/docs/2.2/mod/mod_auth_basic.html和http://httpd.apache.org/docs/2.2/vhosts/name-based.html了解详情
编辑:您的虚拟主机配置看起来像:
<VirtualHost *:80>
ServerName mydomain.com
DocumentRoot /srv/www/wsgi
<Directory /srv/www/wsgi>
Order allow,deny
Allow from all
</Directory>
WSGIScriptAlias / /srv/www/wsgi/app.wsgi
</VirtualHost>
<VirtualHost *:80>
ServerName dev.mydomain.com
DocumentRoot /srv/www/wsgi-dev
<Directory /srv/www/wsgi-dev>
Order allow,deny
Allow from all
</Directory>
WSGIScriptAlias / /srv/www/wsgi-dev/app.wsgi
<Location />
AuthType Basic
AuthName "Restricted Files"
AuthUserFile /usr/local/apache/passwd/passwords
Require valid-user
</Location>
</VirtualHost>
答案 1 :(得分:1)
mod_wsgi不关心你是否使用HTTP身份验证。唯一的规定是,如果你希望它对WSGI应用程序可见,那么你需要使用WSGIPassAuthorization
,但在这种情况下这不是一个问题,因为Django有自己的独立于HTTP身份验证的身份验证方案