16

Django アプリケーションで発生したこの奇妙な 404 エラーをデバッグしようとしています。

Page not found (404)
Request Method: GET
Request URL:    http://78.198.124.245/
Directory indexes are not allowed here.
You're seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard 404 page.

「ここではディレクトリ インデックスは許可されていません」とはどういう意味ですか? 平均?ディレクトリ インデックスとは

私はグーグルで検索しましたが、見つけた結果はすべて静的ファイルの提供に関係しています。しかし、私はそうは思わない。このエラーはどういう意味ですか?

4

2 に答える 2

11

settings.py ファイルで STATIC_URL の値を確認してください。値は、静的ファイルが保存されているサブフォルダーにする必要があります-通常はSTATIC_URL = '/static/'

于 2012-05-18T04:53:42.850 に答える
3

答えは、使用している django のバージョンによって異なります。1.4+ の場合は、STATIC_URL を設定するだけです

1.3.x の場合、STATIC_URLが設定されているものではなく、あなたADMIN_MEDIA_PREFIXが設定されているものです。

に設定すると、django 開発サーバーはフォルダー外の/admin/すべての静的ファイルを提供しようとします。/admin/contrib/admin/media/

これは、http://127.0.0.0:8000/admin/postz/post/473が静的コンテンツを見つけようとすることを意味し、それdjango/contrib/admin/media/postz/post/473 が 404 です。

アクセスしようとしている場合http://127.0.0.0:8000/admin/、それは管理メディア ディレクトリ内の index.html になりますが、内部の静的サーバーはインデックスを許可しないため、スローされるエラーです。

受け入れられた答えは正確には正しくありません。設定STATIC_URLは副作用として機能した可能性がありますが、実際の問題はそれADMIN_MEDIA_PREFIXが間違っていたことです。

最適な設定は次のとおりです。

ADMIN_MEDIA_PREFIX = '/media/' 

また

ADMIN_MEDIA_PREFIX = '/admin/media/'

1.4 の場合は、非推奨のSTATIC_URLasを設定するだけですADMIN_MEDIA_PREFIX

https://docs.djangoproject.com/en/dev/releases/1.4/#django-contrib-admin

于 2012-10-01T10:37:42.860 に答える