6

HTTPS (8443) のみを使用する組み込みの tomcat を実行したいと考えています。8080 ポートをまったく使用したくありません。について何か考えはありますか?

    コネクタ httpsConnector = new Connector();
    httpsConnector.setPort(httpsPort);
    httpsConnector.setSecure(true);
    httpsConnector.setScheme("https");
    httpsConnector.setAttribute("keystoreFile", appBase + "/.keystore");
    httpsConnector.setAttribute("clientAuth", "false");
    httpsConnector.setAttribute("sslProtocol", "TLS");
    httpsConnector.setAttribute("SSLEnabled", true);

    Tomcat tomcat = new Tomcat();
    tomcat.getService().addConnector(httpsConnector);
    tomcat.setPort(8080);
    コネクタ defaultConnector = tomcat.getConnector();
    defaultConnector.setRedirectPort(8443);

    tomcat.setBaseDir(".");
    tomcat.getHost().setAppBase(appBase);

    StandardServer サーバー = (StandardServer) tomcat.getServer();
    AprLifecycleListener リスナー = 新しい AprLifecycleListener();
    server.addLifecycleListener(リスナー);

ありがとう

4

3 に答える 3

2

[tomcat-dir]/conf/server.xml で定義されているコネクタを削除して 8080 にバインドし、HTTPS 用に別のコネクタを用意する必要があります。

于 2012-08-06T07:34:10.900 に答える
0

を作成するために質問のスニペットを使用してみましたが、うまくいきましたhttpsConnector! 欠けている行を1つ追加する必要があったことを除いて:

httpsConnector.setAttribute("keystorePass", "YOUR-PASSWORD-HERE");

キーストアを作成するときに設定したパスワードに設定すると、keytoolうまくいきました。

ありがとう!

于 2013-02-22T18:52:11.210 に答える