TomcatでデプロイされたWebアプリケーション用の単純なフォームベースのログインを実装しようとしています。 loginPage.htmlのフィールドにはj_username
とj_password
があり、指定されたフォームメソッドはです。/Actionsは、私のhtmlとjspファイルとcssとjsファイルのすべてを含むディレクトリであり、すべてのサーブレットのマッピングは/Actions/servletName.doの形式です。アクションにない唯一のページは、index.htmlとloginPageとloginErrorです。HTTPSでフォームベースのログインが失敗し、サーバーに接続できなかったブラウザエラーが発生する
現在、ホームページはindex.htmlです。 Actions/home.htmlへのハイパーリンクがあります。私が望むのは、ハイパーリンクがloginPage.htmlにリダイレクトされてから、ユーザーがログインするとhome.htmlに移動することです。私の理解は、home.htmlは制約されたリソースなので、これは自動的に起こるはずです。しかし、代わりに、私はログインページにリダイレクトされず、ブラウザはページに接続できないというエラーを表示します。上部のURLはhttps://localhost:8443/myProject/Actions/home.htmlとhttps://localhost:8443/myProject/index.htmlのいずれかです。
私はいくつかのチュートリアルを見てきましたが、ファイルの場所を含む完全な例はどこにもありません。ヘルプは非常に高く評価されます。ああ、誰かが疑問に思っている場合は、tomcat-users.xmlファイルをそれに応じて更新しました。あなたがHTTPSを使用したい時はいつでも
<welcome-file-list>
<welcome-file>/index.html</welcome-file>
</welcome-file-list>
<security-role><role-name>Admin</role-name></security-role>
<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>/loginPage.html</form-login-page>
<form-error-page>/loginError.html</form-error-page>
</form-login-config>
</login-config>
<security-constraint>
<web-resource-collection>
<web-resource-name>AllResources</web-resource-name>
<url-pattern>/Actions/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>Admin</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
あなたはどのブラウザを使用していますか? * exact *エラーメッセージとは何ですか? http://は 'index.html'で動作しますか?これは、SSLがあなたのコンテナにまったく設定されていないように思えます。 – BalusC
Chromeを使用して「Google Chromeのローカルホストへの接続試行が拒否されました。ウェブサイトが停止しているか、ネットワークが正しく設定されていない可能性があります。しかし、私はTomcatがSSL用に設定されていると思った。直接/Actions/home.htmlに移動しようとすると、まったく同じエラーが発生します。 – joseph
http:// localhost:8080/myServlet /またはhttp:// localhost:8080/myServlet/index.htmlと入力すると右側のページに移動しますが、上部のURLはhttp:// – joseph