0

サブディレクトリ (たとえば ) から Django アプリケーションを提供したいと考えていますhttp://www.stackoverflow.com/django_app/

経由でページを提供するように mod_wsgi をセットアップしました

WSGIScriptAlias /django_app PATH_TO_DJANGO/wsgi.py

Django が相対パスを尊重するように、LOGIN_URL、STATIC_URL、MEDIA_URL などの設定を指定するにはどうすればよいですか?

STATIC_URL を設定すると、ではなく で"/static/"リソースを参照しようとします。http://www.stackoverflow.com/static/http://www.stackoverflow.com/django_app/static/

しかし、"static"(先頭のスラッシュなしで) に設定すると、これも間違っている任意の URL に対して相対的に解釈されます。たとえば、次の管理ページ

http://www.stackoverflow.com/django_app/admin/

からファイルをロードしようとします

http://www.stackoverflow.com/django_app/admin/static/

http://www.stackoverflow.com/django_app/static設定内でプレフィックスを明示的にハードコーディングせずにDjango に使用するように指示する方法が見つかりませんでした/django_app(mod_wsgi-config で既に指定されているため、これは DRY 原則に違反しています)。また、プロジェクトを変更せずに異なる URL で同じプロジェクトを提供することも禁止されていますが、これは奇妙に思えます。

4

1 に答える 1

1

自動化する方法はありません。これらのいくつかの変数の URL と LOGOUT_URL には、スクリプトで渡され、マウント ポイントを識別する SCRIPT_NAME が自動的にプレフィックスとして付けられるわけではありません。

于 2012-12-02T10:13:42.760 に答える