午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術文章
文章詳情頁

Tomcat中使用ipv6地址的示例代碼

瀏覽:534日期:2023-03-19 16:52:03
目錄
  • 1、替換老版本Tomcat
  • 2、項目無法啟動
  • 3、Tomcat7攔截特殊字符
  • 4、設置IPV6的監聽

在公司的一次項目改造過程中,需要將原來的IPV6替換成IPV4。查詢資料資料之后,你會遇到如下問題,總結解決辦法如下:

1、替換老版本Tomcat

tomcat6不支持監聽ipv6 tomcat7支持監聽ipv6 tomcat8支持監聽ipv6

我們只需將tomcat換為7以上的版本即可!!!!!!!!!

2、項目無法啟動

如果使用Tomcat 7以上的版本來替換老版本的Tomcat,那么問題來了你會無法啟動項目。

錯誤日志:

26-Aug-2020 16:11:15.558[RMI TCP Connection(3)-127.0.0.1] org.apache.tomcat.util.descriptor.web.WebXmlParser.parseWebXml Parse error in application web.xml file at [file:/F:/Idea-Code/chuangjhx/out/artifacts/emp_std_192_169_1_81_war_exploded/WEB-INF/web.xml]
    java.io.FileNotFoundException: Could not resolve XML resource [user] with public ID [null], system ID [userConfig.xml] and base URI [file:/F:/Idea-Code/chuangjhx/out/artifacts/emp_std_192_169_1_81_war_exploded/WEB-INF/web.xml] to a known, local entity.

因為新版本的Tomcat無法解析你的web.xml

解決辦法:

打開你的Tomcat的安裝目錄 找到conf目錄下的context.xml

在** **中添加屬性xmlBlockExternal,具體如:

<Context xmlBlockExternal="false">

3、Tomcat7攔截特殊字符

當你在服務期內使用ipv6地址進行下載或者跳轉的時候,會出現如下錯誤

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.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:479)
    at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:687)
    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1468)
    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
    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)

這是因為

  • 根據rfc規范(RFC 3986規范定義了Url中只允許包含英文字母(a-zA-Z)、數字(0-9)、-_.~4個特殊字符以及所有保留字符(RFC3986中指定了以下字符為保留字符:! * ’ ( ) ; : @ & = + $ , / ? # [ ]))。
  • url中不允許有 |,{,}等特殊字符,但在實際生產中還是有些url有可能攜帶有這些字符,特別是|還是較為常見的。在tomcat升級到7以后,對url字符的檢查都變嚴格了,如果出現這類字符,tomcat將直接返回400狀態碼。

解決辦法(SpringBoot)

在你的啟動類上添加

    @Bean
    public TomcatServletWebServerFactory webServerFactory() {
TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory();
factory.addConnectorCustomizers(new TomcatConnectorCustomizer() {
    @Override
    public void customize(Connector connector) {
connector.setProperty("relaxedPathChars", "\"<>[\\]^`{|}");
connector.setProperty("relaxedQueryChars", "\"<>[\\]^`{|}");
    }
});
return factory;
    }

解決辦法(Tomcat)

打開你的Tomcat 的安裝目錄 找到conf目錄下的server.xml ,作出如下修改:

<Connector port="8082" protocol="HTTP/1.1"
       connectionTimeout="20000"
       relaxedQueryChars="[]|{}^&#x5c;&#x60;&quot;&lt;&gt;"
       redirectPort="8443" />

4、設置IPV6的監聽

想讓你的tomcat即可以使用IPV4又可以使用IPV6訪問,需要進行如下配置

打開打開你的Tomcat的安裝目錄 找到conf目錄下的server.xml,作出如下修改:

 <Connector port="8080" protocol="HTTP/1.1"
    address="0.0.0.0"
       connectionTimeout="20000"
       relaxedQueryChars="[]|{}^&#x5c;&#x60;&quot;&lt;&gt;"
       redirectPort="8443" />
    <Connector port="8080" protocol="HTTP/1.1"
    address="[::]"
       connectionTimeout="20000"
       relaxedQueryChars="[]|{}^&#x5c;&#x60;&quot;&lt;&gt;"
       redirectPort="8443" />

到此這篇關于Tomcat中使用ipv6地址的示例代碼的文章就介紹到這了,更多相關Tomcat使用ipv6地址內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

標簽: Tomcat
主站蜘蛛池模板: 综合色av | 大地资源第二页在线观看高清版 | 亚洲第一黄色网 | 人人干网站 | 制服丨自拍丨欧美丨动漫丨 | 天天操天 | 色婷视频 | 久久在线观看视频 | 日韩精品视频在线 | 五月天青青草 | 福利视频91 | 一区二区三区精品视频 | 波多野结衣视频一区二区 | 久久精品综合 | 免费在线成人 | 日韩不卡中文字幕 | 九九热九九热 | 日韩欧美三级 | 欧美久久久 | 日韩大片免费 | 一级片免费在线观看 | 日日摸日日添日日躁av | 什么网站可以看毛片 | 欧美亚洲一级片 | 青青精品视频 | 免费国产黄色片 | 久久xxxx| 99久久久国产精品 | 在线看黄色网址 | 国产传媒在线看 | 九一精品视频 | 黄色aaa视频| 日韩久久成人 | 亚洲精品www久久久久久广东 | 欧美大片高清免费观看 | 久久天天操| 欧美亚洲专区 | 日本a级片在线观看 | 国产亚洲第一页 | www.久久| 日韩精品999 |