tomcat访问权限设置
1.全局设置,设置允许某些IP能够访问到tomcat服务器,或不能访问tomcat服务器
只需要编辑tomcat的l,增加适当代码即可。
修改如下:
在<Host> </Host> 之中添加以下代码
1,只允许192.168.1.10访问:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.10" deny=""/>
2,只允许192.168.1.*⽹段访问:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.*" deny=""/>
3,只允许192.168.1.10、192.168.1.30访问:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.10,192.168.1.30" deny=""/>
根据主机名进⾏限制:
<Valve className="org.apache.catalina.valves.RemoteHostValve" allow="abc" deny=""/>
2.部分设置
例如我们有⼀个名为webapps/myapp的虚拟⽬录。
设置这个myapp实例的访问权限
⽤⽂本编辑器打开tomcat的 l配置⽂件,在<Host> </Host> 之中添加以下代码添加代码如下:
<context path=”/myapp” reloadable=”true” docBase=”/var/www/myapp”>
<valueclassName=”org.apache.catalina.values.RemoteAddrValue”
allow=”127.0.0.1” deny=”″ />
</context>
这样只允许本机 127.0.0.1这个地址访问 x:8080/myapp
在context中 path是访问路径 docBase是你⽂件的位置
<Context path="/core/production" reloadable="true" docBase="core/production">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="10.0.7.99|10.0.7.9" deny=""/>
</Context>
这个实例中只要10.0.7.99|10.0.7.9 这两个ip可以访问 x:8080/core/production
⽽这个访问路径的实际访问位置是core/production
要限制多个ip的可以使⽤正则;或者可以⽤ , 或者 | 作为分隔(tomcat版本不同)。
1. 在tomcat 5.5之前
path: 即要建⽴的虚拟⽬录指定访问该Web应⽤的URL⼊⼝,如:127.0.0.1:8080/helloApp1。
docBase: 指定Web应⽤的⽂件路径,可以给定绝对路径,也可以给定相对于<Host>的appBase属性的相对路径,如果Web应⽤采⽤开放⽬录结构,则指定Web应⽤的根⽬录,
如果Web应⽤是个war⽂件,则指定war⽂件的路径。
reloadable :如果这个属性设为true,tomcat服务器在运⾏状态下会监视在WEB-INF/classes和WEB-INF/lib⽬录下class⽂件的改动,如果监测到有class⽂件被更新的,服务器会⾃动重新加载Web应⽤。
在开发阶段将reloadable属性设为true,有助于调试servlet和其它的class⽂件,但这样⽤加重服务器运⾏负荷,
tomcat虚拟主机怎么设置建议在Web应⽤的发布阶段将reloadable设为false。
2. 在tomcat 5.5之后
不推荐在l中进⾏配置,⽽是在/l中进⾏独⽴的配置。因为 l 是不可动态重加载的资源,服务器⼀旦启动了以后,要修改这个⽂件,就得重启服务器才能重新加载。
⽽ l ⽂件则不然, tomcat 服务器会定时去扫描这个⽂件。⼀旦发现⽂件被修改(时间戳改变了),就会⾃动重新加载这个⽂件,⽽不需要重启服务器。
<Context path="/kaka" docBase="kaka" debug="0" reloadbale="true" privileged="true">
<WatchedResource>l</WatchedResource>
<WatchedResource>l</WatchedResource> 监控资源⽂件,如果l || l改变了,则⾃动重新加载改应⽤。
<Resource name="jdbc/testSiteds"表⽰指定的jndi名称
auth="Container"表⽰认证⽅式,⼀般为Container
type="javax.sql.DataSource"
maxActive="100"连接池⽀持的最⼤连接数
maxIdle="30"连接池中最多可空闲maxIdle个连接
maxWait="10000"连接池中连接⽤完时,新的请求等待时间,毫秒
username="root"表⽰数据库⽤户名
password="root"表⽰数据库⽤户的密码
driverClassName="sql.jdbc.Driver"表⽰JDBC DRIVER
url="jdbc:mysql://localhost:3306/testSite" /> 表⽰数据库URL地址
</Context>
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论