2012-10-03 17 views
6

私は新しいdjangoプロジェクトを開始し、管理アプリケーションを有効にしました。 私はsettings.pyに持っている何が私はadminサイトにログインすることができますが、私は/変更サイトやユーザーを追加しようとしているとき、私はDjangoの管理者がCSRFの検証を失敗しました

CSRF verification failed. Request aborted. 
Reason given for failure: 
CSRF token missing or incorrect. 

を取得しています:私は「

TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader', 
'django.template.loaders.app_directories.Loader', 
) 

MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware', 
'django.contrib.sessions.middleware.SessionMiddleware', 
'django.middleware.csrf.CsrfViewMiddleware', 
'django.contrib.auth.middleware.AuthenticationMiddleware', 
'django.contrib.messages.middleware.MessageMiddleware', 
# Uncomment the next line for simple clickjacking protection: 
# 'django.middleware.clickjacking.XFrameOptionsMiddleware', 
) 
INSTALLED_APPS = (
'django.contrib.auth', 
'django.contrib.contenttypes', 
'django.contrib.sessions', 
'django.contrib.sites', 
'django.contrib.messages', 
'django.contrib.staticfiles', 
'django.contrib.admin', 
# Uncomment the next line to enable admin documentation: 
# 'django.contrib.admindocs', 
) 

mは私がDjangoのバージョン1.4を持って、私はそこ

<input type='hidden' name='csrfmiddlewaretoken' value='T9Mfk1LRXi5jPE2dh5jcvdKwzYM6Iy5I' /> 

参照管理ページのソースを見て.1

+0

あなたはあなたのクッキーを消去しようとしましたか?それ以外のものがすべて正しく設定されていれば、それを修正するかもしれません。 –

答えて

6

CSRF_COOKIE_DOMAIN設定を上書きしましたか?フォームにCSRFトークンが存在し、管理アプリケーションのソースを変更していない場合は、Cookieが正しく設定されていない可能性が最も高いシナリオです。

ログインページのレスポンスヘッダーを確認して、Cookieが正しく設定されていることを確認し、ログイン試行のリクエストヘッダーをチェックして、送信中であることを確認します(フォームの値と一致します)。

+1

おっと...私はちょうどキャッシュをクリアし、私のマシンを再起動する必要があるように見えます。助けてくれてありがとう – igoris

+0

似たような問題がここにあります。私は/ admin /で開始するのではなく、単にログインページを更新していました。 –

0

ローカルでは、http://localhost:8040/my-admin/をブラウズするときにCRSFがうまく動作するプロジェクトが1つありますが、それはhttp://127.0.0.1:8040/my-admin/で失敗します。

私はなぜそれが誰かに時間を節約するのに役立つかもしれません。

注:私はCSRF_COOKIE_DOMAINを設定していません。