• tomcat 监听指定ip


    Tomcat是Apache基金下的一个很成功的产品,作为Java应用容器被广泛的使用。当然它不像WebSphere、WebLogic那样强大,甚至比起JBoss也有所不如,但Tomcat的量级很轻,使用很方便,深入初学者或轻量级应用的追捧。

    本文讲Tomcat绑定IP地址的问题。默认情况下,Tomcat会监听8080端口,这个我们都知道。但它会监听哪些IP呢?默认情况下,它会监听所有的IP。

    下面这一段是从Tomcat默认的server.xml中抽取的Connector这段,我们可以看到没有关系监听IP的相关设置。

    <Connector port="8080" protocol="HTTP/1.1"
       connectionTimeout="20000"
       redirectPort="8443" />
                   
    运行/bin/startup.bat来启动Tomcat后,我们使用Netstat命令来查看一下Tomcat绑定了哪些IP。

    D:splaybow.comapache-tomcat-6.0.20in>startup.bat
    Using CATALINA_BASE:   D:splaybow.comapache-tomcat-6.0.20
    Using CATALINA_HOME:   D:splaybow.comapache-tomcat-6.0.20
    Using CATALINA_TMPDIR: D:splaybow.comapache-tomcat-6.0.20 emp
    Using JRE_HOME:        D:splaybow.comjdk1.6.0_16
    D:splaybow.comapache-tomcat-6.0.20in>netstat -an | findstr "8080"
      TCP    0.0.0.0:8080           0.0.0.0:0              LISTENING
      TCP    [::]:8080              [::]:0                 LISTENING

    从上面netstat的结果可以看出,Tomcat监听了IPv4的0.0.0.0的8080端口,也监听了IPv6的[::]的8080端口。即可以总结为Tomcat监听了所有的IP协议的所有IP地址的8080端口。

    那么如果我们只想让Tomcat监听传统意义上的本地127.0.0.1的IP地址,那么应该怎么设置呢?且看下面这段配置。

    <Connector port="8080" address="127.0.0.1" protocol="HTTP/1.1"
       connectionTimeout="20000"
       redirectPort="8443" />

    这段Tomcat监听IP的配置中,可以与上面一段配置做一下比较,我们看到多了一句: address="127.0.0.1"。好,我们来看看运行后结果:

    D:splaybow.comapache-tomcat-6.0.20in>startup.bat
    Using CATALINA_BASE:   D:splaybow.comapache-tomcat-6.0.20
    Using CATALINA_HOME:   D:splaybow.comapache-tomcat-6.0.20
    Using CATALINA_TMPDIR: D:splaybow.comapache-tomcat-6.0.20 emp
    Using JRE_HOME:        D:splaybow.comjdk1.6.0_16
    D:splaybow.comapache-tomcat-6.0.20in>netstat -an | findstr "8080"
      TCP    127.0.0.1:8080         0.0.0.0:0              LISTENING

    OK,Tomcat已经如我们所愿,只监听了IP地址127.0.0.1的8080端口了。

  • 相关阅读:
    Cocoa中对日期和时间的处理 NSCalendar (一)
    iOS优秀博客收录
    八大排序(内容是转载链接)
    IOS8定位无效问题
    ios 里如何判断当前应用的定位服务是否可用
    MKMapView和MKMapViewDelegate
    根据经纬度翻译成详细位置的各种方法
    iOS 根据经纬度反查 地名
    MapKit学习笔记
    解决Collection <__NSArrayM: 0xb550c30> was mutated while being enumerated
  • 原文地址:https://www.cnblogs.com/zenghui940/p/5159938.html
Copyright © 2020-2023  润新知