Apache Tomcat 9.0.31にアップデートしたらAJP経由でアクセス出来なくなった。
server.xmlを見てみるとAJPの設定がコメントアウトされていたので、下記を追記した。
<Connector protocol="AJP/1.3"
port="8009"
redirectPort="8443"/>
しかし、今度は下記のようなエラーが出るようになった。
Caused by: java.lang.IllegalArgumentException: The AJP Connector is configured with secretRequired="true" but the secret attribute is either null or "". This combination is not valid.
at org.apache.coyote.ajp.AbstractAjpProtocol.start(AbstractAjpProtocol.java:264)
at org.apache.catalina.connector.Connector.startInternal(Connector.java:1035)
secretRequiredがデフォルトで”true”になっているため、secretを設定しろということらしい。
面倒なのでアドレスでアクセス制限をかけて、secretRequiredは”false”にした。
<Connector protocol="AJP/1.3"
address="localhost"
port="8009"
redirectPort="8443"
secretRequired="false"/>
tomcatを起動したら「secretRequiredはnull、また文字列で設定されています」エラーがずっと出ていたが
tomcatのserver.xmlを確認したら以下の通りでありました。
つまり、「secretRequired=”false”」は丸々で抜けていました。なので下記の通り、「secretRequired」を追記してあげたらうまく行けました。