(转载)tomcat常用配置详解和优化方法:https://www.cnblogs.com/xuwc/p/8523681.html
以下是一些对上面没有涉及到的内容进行补充:
1、隐藏tomcat的版本号
正常情况下,运行tomcat,输入http://localhost:8080,会出现版本号,如下图的左上角:
修改方法为:打开lib\catalina.jar\org\apache\catalina\util\ServerInfo.properties,可以看到如下内容:
server.info=Apache Tomcat/8.5.34
server.number=8.5.34.0
server.built=Sep 4 2018 22:28:22 UTC
将server.info的属性值改成No Version
再次启动Tomcat
可以看见,版本号已经改成我们想要的了。
2、更改tomcat的icon
将\webapps\ROOT目录下的favicon.ico换成你想要作为icon的图片即可。
3、提高安全性
(1)通过输入http://localhost:8080也可以看到当前这个tomcat的不少的配置信息,可以直接将\webapps目录下的ROOT文件夹换个名称,再创建一个新的空的ROOT文件夹,这样,别人想访问http://localhost:8080,就会变成404的界面,就会看不到任何的信息。
(2)修改conf目录下server.xml里的<Server port="8005" shutdown="SHUTDOWN">
运行tomcat,打开cmd命令行,输入telnet 127.0.0.1 8005或者telnet localhost 8005,会打开密码输入界面,输入SHUTDOWN,就会发现tomcat被关闭了,所以修改端口或者指令可以更好的避免一些麻烦。或者直接将port设置为-1,将其禁用。
4、修改Cookies的安全性
为了避免xss跨站脚本攻击,可以打开\conf目录下的的context.xml文件,在其中的context标签中添加useHttpOnly="true",然后就会对cookie进行加密,可以降低这种cookie暴露给黑客和恶意网站的几率。
5、多域名访问
打开tomcat目录\conf目录下的server.xml文件。添加如下代码:
<Host appBase="" autoDepoly="true" name="" unpackWARs="true">
<context path="" docBase="" debug="0" />
</Host>
appBase为另一个项目的war包所在的路径。
name为访问时要输入的地址,例:http://name:8080
autoDepoly和unpackWars是war包自动部署的功能,将这两个属性值设置为false,可以防止被植入木马等恶意程序。
其余属性见我另一篇博客——Tomcat的热部署。
其次,需要打开C:\Windows\System32\drivers\etc目录下的hosts文件,添加一个新的映射:
127.0.0.1 name
第二种方法:添加新的service
同样是在server.xml中,添加以下代码:
<Service>
<connector connectionTimeout="20000" port="8081" protocol="Http/1.1" redirectPort="8443"/>
<Engine name="second" debug="0">
<Host appBase="" autoDepoly="true" name="" unpackWars="true">
<Context path="" docBase="" debug="0"/>
</Host>
</Engine>
</Service>