- blogs:
- cles::blog
« データ消去技術ガイドブック(第2版) :: 東大が大学債を起債する? »
2020/09/02
いつのまにか Tomcat で URL の [ ] がエラーになるようになっている
tomcat rfcTomcat のログを眺めていていつの間にか URL に [ ] が含まれると以下のようなエラーを吐いていることに気づいたので対応方法をメモ。
以前はこういうことはなかったはずなので、気づかないうちに挙動が変わっていたようです。
Sep 02, 2020 4:29:46 PM org.apache.coyote.http11.AbstractHttp11Processor process
INFO: Error parsing HTTP request header
Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level.
java.lang.IllegalArgumentException: Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986
at org.apache.coyote.http11.InternalAprInputBuffer.parseRequestLine(InternalAprInputBuffer.java:239)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)
at org.apache.tomcat.util.net.AprEndpoint$SocketWithOptionsProcessor.run(AprEndpoint.java:2486)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
Tomcat のバージョンはこんな感じ。
# rpm -qa | grep tomcat-7
tomcat-7.0.76-12.el7_8.noarch
† Tomcat 7 の場合は 7.0.73 から?
Change Log を確認してみると 7.0.73 の以下の記載が気になるところ。
Apache Tomcat 7 (7.0.73) - Changelog
Add additional checks for valid characters to the HTTP request line parsing so invalid request lines are rejected sooner. (markt)
この直近のコミットを眺めてみると、 2016/11/2 のコミットにたどり着きます。
この中身を見るとエラーに出ているメッセージが追加されているので、7.0.73 以降にこのような挙動になっていたようです。
- Tomcat 7: Add additional checks for valid characters to the HTTP request line · apache/tomcat@cdc0a93
- Tomcat 8: Add additional checks for valid characters to the HTTP request line · apache/tomcat80@779d5d3
† 対処は server.xml で
対処方法としては、server.xml の Connector の定義に relaxedQueryChars*1 を足してやればいいみたいです。
Query ではなく Path の部分に使いたいのであれば relaxedPathChars も必要になります。
server.xml
<Connector port="8080" protocol="HTTP/1.1"
・・・・・・・・
relaxedQueryChars="[]|{}^\`" />
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/11949
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
« データ消去技術ガイドブック(第2版) :: 東大が大学債を起債する? »
サイト内検索
検索ワードランキング
へぇが多いエントリ
- シャープの空気清浄加湿器の... (1)
- SMARTEK デジタル温湿度計 (1)
閲覧数が多いエントリ
1 . NP_TrackBack v2.x系の使い方(16593)
2 . Word で数式がグレーアウトされていて挿入できないときは(15215)
3 . awk で指定した n カラム目以降を出力する(11785)
4 . アーロンチェアのポスチャーフィットを修理(11517)
5 . Windows 10 で勝手にログアウトされないようにする(9762)
2 . Word で数式がグレーアウトされていて挿入できないときは(15215)
3 . awk で指定した n カラム目以降を出力する(11785)
4 . アーロンチェアのポスチャーフィットを修理(11517)
5 . Windows 10 で勝手にログアウトされないようにする(9762)
cles::blogについて
Referrers