-
1、配置多个tomcat
首先需要知道的是,我们不通过Eclipse等其它工具启动Tomcat而通过手动启动Tomcat的时候是需要配置环境变量的。而我们启动Tomcat的时候,则需要读取环境变量中的相关配置来运行。也就是说,假如我有多个Tomcat,而启动的时候都是启动环境变量里面的Tomcat。这样便会因为端口冲突而导致启动失败了。
-
假如我们想要启动多个Tomcat,则需要在环境变量中下手了。Tomcat的环境变量为CATALINA_HOME,如果我们想配置多个,可以配置CATALINA_HOME1,CATALINA_HOME2等环境变量,变量名随便命名,值就是Tomcat的目录。
-
假如我们想启动两个Tomcat,将Tomcat复制成为两份,创建环境变量CATALINA_HOME1,CATALINA_HOME2分别为两个Tomcat的目录。
-
同时我们还需要修改tomcat中bin目录下的catalina.bat和startup.bat两个文件。将两个文件中的CATALINA_HOME替换为我们设置的环境变量,如CATALINA_HOME1或CATALINA_HOME2
-
OK,配置好后,我们只需要将Tomcat的端口修改成不一样的,就可以实现多开的功能了,至于如何修改Tomcat的端口,可以看参考资料。
-
2、配置nginx和tomcat
实战——解压拷贝出三个tomcat
实战——修改三个tomcat服务器的端口(conf目录下的server.xml)
tomcat有三个端口,都需要修改,每个端口的具体作用如下图所示:
server1(apache-tomcat-9.0.0.M21_server1\conf\server.xml)
修改tomcatserver1的端口
server2(apache-tomcat-9.0.0.M21_server2\conf\server.xml)
第二个tomcat服务器端口
server3(apache-tomcat-9.0.0.M21_server3\conf\server.xml)
第三个tomcat服务器修改端口
实战——修改三个tomcat服务器的默认页面
apache-tomcat-9.0.0.M21_server1\webapps\ROOT\index.jspServer1
apache-tomcat-9.0.0.M21_server2\webapps\ROOT\index.jspServer2
apache-tomcat-9.0.0.M21_server3\webapps\ROOT\index.jspServer3
实战——启动三个tomcat服务器进行测试
apache-tomcat-9.0.0.M21_server1\bin\startup.bat
apache-tomcat-9.0.0.M21_server2\bin\startup.bat
apache-tomcat-9.0.0.M21_server3\bin\startup.bat
启动三个tomcat通过浏览器访问
实战———配置Nginx(nginx-1.12.0\conf\nginx.conf)
实战———启动Nginx
启动Nginx
实战———测试
附——Nginx参数的讲解全局
#运行Nginx的用户和用户组
#usernobodynobody;
#Nginx启动多少个进程,最好跟计算机CPU核数一致
worker_processes1;
#全局错误日志类型
#error_loglogs/error.log;
#error_loglogs/error.lognotice;
#error_loglogs/error.loginfo;
#进程号保存文件
#pidlogs/nginx.pid;
附——Nginx参数的讲解等待事件
#等待事件
events{
#每个进程最大的连接数(总的连接数=worker_connections*worker_processes)
worker_connections1024;
}
附——Nginx参数的讲解HTTP
http{
#文件扩展名和文件类型映射表
includemime.types;
#默认文件类型
default_typeapplication/octet-stream;
#日志的格式
log_formatmain'$remote_addr-$remote_user[$time_local]"$request"''$status$body_bytes_sent"$http_referer"''"$http_user_agent""$http_x_forwarded_for"';
#日志
access_loglogs/access.logmain;
#设定请求缓冲
client_header_buffer_size1k;
large_client_header_buffers44k;
#高效文件传输模式,指定是否调用sendfile函数来传输文件,一般的应用都建议启用。
sendfileon;
#长连接超时时间,单位秒
keepalive_timeout65;
#客户端上传文件大小控制
client_max_body_size8m;
#是否启用压缩传输
#gzipon;
附——Nginx参数的讲解HTTP中的集群
#服务器的集群列表
upstreamCLUSTER_NAME{#CLUSTER_NAME是服务器集群的名字
#要转发的服务器列表weight权重越大,更多概率被分配到。
server127.0.0.1:18080weight=1;
server127.0.0.1:28080weight=2;
server127.0.0.1:38080weight=1;
附——Nginx参数的讲解HTTP中虚拟机的配置
#第一个虚拟主机
server{
listen80;#端口
server_namelocalhost;#主机名
location/{
proxy_passhttp://CLUSTER_NAME;
proxy_redirectdefault;
location~.*\.(js|css|ico|png|jpg|eot|svg|ttf|woff){
#所有静态文件直接读取硬盘
roottomcat7/webapps/Root/WEB-INF;
expires30d;#缓存30天