3

djangoをベースにした最初のWebサイトを完成させ、ライブサーバーにデプロイする準備ができました。ただし、調整やテストを行っている間は、このサイトを一般に公開したくありません。

PHPサイトでは、最後の変更を行うために、常に.htaccessを介した基本http認証を使用していました。これは、サイト全体のアクセスを拒否する2つのライナーです。

理想的には、次のような環境を実行したいと思います。

  • static.mydomain.com(静的ファイル用にapache2によって提供されます)
  • mydomain.com(mod_wsgi最新の安定したリリースでapache2によって提供->一般公開)
  • dev.mydomain.com(mod_wsgi dev / testsを使用してapache2によって提供されます->パブリックには使用できません(基本認証))

これはdjango/apache2 / mod_wsgiで実行できますか?

4

2 に答える 2

4

仮想ホストの基本認証をセットアップできます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>
于 2012-08-01T15:07:05.943 に答える
1

mod_wsgi は、HTTP 認証を使用するかどうかを気にしません。唯一の規定は、WSGI アプリケーションから見えるようにしたい場合は を使用する必要があるということですWSGIPassAuthorizationが、Django には HTTP 認証とは独立した独自の認証スキームがあるため、この場合は問題になりません。

于 2012-08-01T15:07:26.850 に答える