2

UWSGIの背後でDjangoを実行して、ほぼ完全に機能するMezzanineのインスタンスをセットアップしました。唯一の問題は、管理者ログインページが正しく機能しないことです。ブラウザがにリダイレクトされるよりも正常にログインしようとするとhttp://admin///admin/の代わりにhtmlフォームアクション属性が設定されて/admin/いるため、ブラウザは「admin」を現在のドメインのルートディレクトリではなくドメイン名として認識します。

DjangoとMezzanineのパッケージコードを調べてみましたが、余分なスラッシュを引き起こしているはずのコードがそこに表示されません。settings.FORCE_SCRIPT_NAMEに変更するとこれが発生する可能性があるというWebページを見つけまし"/"たが、デフォルト値をオーバーライドしていNoneないため、これが原因ではないはずです。

urls.pyには、次のものがあります(これがデフォルトだと思います)。

urlpatterns = pattern( ""、

    #ここで管理プレフィックスを変更して、の代替URLを使用します
    #管理インターフェース。これはわずかに安全です。
    ("^ admin /"、include(admin.site.urls))、

  ...。
4

1 に答える 1

1

久しぶりに何が問題なのかわかりました!私は、nginxを使用してuwsgiを設定する方法について、いくつかの指示に従いましたuwsgi_param SCRIPT_NAME /;。の目的はSCRIPT_NAME、UWSGIアプリケーションのベースパスを提供することです。したがって、この場合、スラッシュを2倍にするのに役立ちます。ピラミッドでも同じ問題が発生していることがわかりました。これは、どのUWSGIアプリケーションでも発生すると思われます。

于 2013-01-10T21:45:21.767 に答える