CI

Jenkinsの管理画面で「URLがUTF-8でデコード・・・」みたいな警告が表示される場合の対応方法

クソ長いタイトルの通りなのですが、Tomcat上で動作している、Jenkinsの管理画面で
「URLがUTF-8でデコードされていません。ジョブ名などにnon-ASCIIな文字を使用する場合は、コンテナの設定やTomcat i18Nを参考に設定してください。」
みたいな警告がでる場合の対応方法をお伝えします。
(Tomcatのバージョンによって表示される場合とされない場合があるかもしれません。)

ちなみに、こんな画面
Jenkinsの管理-Jenkins-2

AJPコネクターで動作させている場合

フロントエンドにApacheがいてmod_proxy_ajpなどでTomcatに接続している場合は、conf/server.xmlの以下を修正します。

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" 
           URIEncoding="UTF-8" />

TomcatのHTTPコネクターで動作させている場合

http://localhost:8080/等で直接Tomcatに接続している場合は、conf/server.xmlの以下を修正します。

    <Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443"
               URIEncoding="UTF-8" />

いずれの場合も、動作させているConnectorに

URIEncoding="UTF-8"

を追加しましょう。
余談ですが、Apacheからmod_proxy_ajpで接続している場合で且つTomcatのHTTPコネクターを使用しない場合は、HTTPコネクター部分をコメントアウトしておいたほうがよいと思われます。
conf/server.xmlは自動で再読み込みされないので、Tomcatを再起動します。
その後、Jenkinsの管理画面上で、メッセージが消えているようであれば、設定完了です。
Jenkinsの管理-Jenkins-3

-CI
-

Copyright© ビー鉄のブログ , 2020 All Rights Reserved Powered by AFFINGER5.