南昌有做网站的吗,卡盟自助网站建设,专业手机网站建设,WordPress是前端还是后端Tomcat服务器是一个免费的开放源代码的Web应用服务器#xff0c;属于轻量级应用服务器#xff0c;在中小型系统和并发访问用户不是很多的场合下被普遍使用#xff0c;是开发和调试JSP程序的首选。一般来说#xff0c;Tomcat虽然和Apache或者Nginx这些Web服务器一样#xf… Tomcat服务器是一个免费的开放源代码的Web应用服务器属于轻量级应用服务器在中小型系统和并发访问用户不是很多的场合下被普遍使用是开发和调试JSP程序的首选。一般来说Tomcat虽然和Apache或者Nginx这些Web服务器一样具有处理HTML页面的功能然而由于其处理静态HTML的能力远不及Apache或者Nginx所有Tomcat通常是作为一个Servlet和JSP容器单独运行在后端。 1、案例实施
1.1、实施准备
1关闭firewalld防火墙。
[rootlocalhost ~]# systemctl stop firewalld2在安装Tomcat之前必须先安装JDK。JDK 的全称是 Java Development Kit是Sun公司免费 提供的Java语言的软件开发工具包其中包含Java虚拟机(JVM)。编写好的Java源程序经过编译 可形成Java字节码只要安装了JDK就可以利用JVM解释这些字节码文件从而保证了Java的跨平台性。 在平台兼容性方面JDK作为解释字节码文件并据此调用操作系统API实现对应功能的 Java虚拟机与操作系统类型和平台位数密切相关因此存在不同类型的版本而Tomcat也具有上述特征默认情况下JDK已经安装所以需要预先下载 Tomcat本章中所使用的 Tomcat 软件的源码包为apache-tomcat-8.5.16.tar.gz。
1.2、查看JDK是否安装 运行java -version命令查看java是否安装。如果没有安装需要自行下载安装。
[rootlocalhost ~]# java -version
openjdk version 1.8.0_181
OpenJDK Runtime Environment (build 1.8.0_181-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)1.3、安装配置Tomcat
1解压apache-tomcat-8.5.16.tar.gz包。
[rootlocalhost ~]# tar xf apache-tomcat-8.5.16.tar.gz 2解压后生成apache-tomcat-8.5-16文件夹将该文件夹移动到/usr/local/下并改名为tomcat8。
[rootlocalhost ~]# mv apache-tomcat-8.5.16/ /usr/local/tomcat83启动tomcat。
[rootlocalhost ~]# /usr/local/tomcat8/bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat8
Using CATALINA_HOME: /usr/local/tomcat8
Using CATALINA_TMPDIR: /usr/local/tomcat8/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat8/bin/bootstrap.jar:/usr/local/tomcat8/bin/tomcat-juli.jar
Tomcat started.Tomcat默认运行在8080端口运行netstat命令查看8080端口监听的信息。
[rootlocalhost ~]# netstat -anpt | grep 8080
tcp6 0 0 :::8080 :::* LISTEN 63339/java
4打开浏览器访问测试http://192.168.136.21:8080/如果出现以下界面则表示Tomcat已经启动成功。 如果想关闭Tomcat则运行/usr/local/tomcat8/bin/shutdown.sh命令。
1.4、Tomcat配置相关说明 tomcat的主目录为/usr/local/tomcat8/。
[rootlocalhost ~]# cd /usr/local/tomcat8/
[rootlocalhost tomcat8]# ll
总用量 92
drwxr-x--- 2 root root 4096 1月 13 14:36 bin
drwx------ 3 root root 254 1月 13 16:06 conf
drwxr-x--- 2 root root 4096 1月 13 14:36 lib
-rw-r----- 1 root root 57092 6月 22 2017 LICENSE
drwxr-x--- 2 root root 197 1月 13 14:37 logs
-rw-r----- 1 root root 1723 6月 22 2017 NOTICE
-rw-r----- 1 root root 7064 6月 22 2017 RELEASE-NOTES
-rw-r----- 1 root root 15946 6月 22 2017 RUNNING.txt
drwxr-x--- 2 root root 30 1月 13 14:36 temp
drwxr-x--- 7 root root 81 6月 22 2017 webapps
drwxr-x--- 3 root root 22 1月 13 14:37 work1主要目录说明。 I --- bin/存放Windows或Linux平台上启动和关闭Tomcat的脚本文件。 I --- conf/存放Tomcat服务器的各种全局配置文件其中最重要的是server.xml和web.xml。 I --- lib/存放Tomcat运行需要的库文件(JARS)。 | --- logs存放Tomcat执行时的LOG文件。 | --- webappsTomcat的主要Web发布目录(包括应用程序示例)。 |-- work存为JSP编译后产生的class 文件 2配置文件说明。
[rootlocalhost tomcat8]# ll conf/
总用量 224
drwxr-x--- 3 root root 23 1月 13 14:37 Catalina
-rw------- 1 root root 13816 6月 22 2017 catalina.policy
-rw------- 1 root root 7376 6月 22 2017 catalina.properties
-rw------- 1 root root 1338 6月 22 2017 context.xml
-rw------- 1 root root 1149 6月 22 2017 jaspic-providers.xml
-rw------- 1 root root 2358 6月 22 2017 jaspic-providers.xsd
-rw------- 1 root root 3622 6月 22 2017 logging.properties
-rw------- 1 root root 7607 1月 13 16:06 server.xml
-rw------- 1 root root 2164 6月 22 2017 tomcat-users.xml
-rw------- 1 root root 2633 6月 22 2017 tomcat-users.xsd
-rw------- 1 root root 168251 6月 22 2017 web.xmlcatalina.policy权限控制配置文件。 catalina.propertiesTomcat 属性配置文件. context.xml上下文配置文件。 logging.properties日志log相关配置文件。 server.xml主配置文件。 tomcat-users.xmlmanager-gui 管理用户配置文件(Tomcat安装后提供一个manager-gui的管理界面通过配置该文件可以开启访问)。 web.xmlTomcat的servletservlet-mapping.filter、MIME等相关配置。 1.5、Tomcat主配置文件说明 server.xml为Tomcat的主要配置文件通过配置该文件可以修改Tomcat的启动端口、网站目录、虚拟主机、开启https等重要功能。 整个server.xml由以下结构构成 Server、Service、 Connector/、 Engine、Host、Context、/Context、/Host、/Engine、/Service和/Server。 其中!-- --内的内容是注释信息黑色斜体部分是我们需要注意和需要经常更改的部分。 1.6、Tomcat Server的组成部分说明 1Server Server元素代表了整个Catalina的servlet容器 2) Service Service 是这样一个集合:它由一个或者多个Connector,以及一个Engine(负责处理所有Connector所获得的客户请求)组成。 3) Connector 一个Connector 在某个指定端口上侦听客户请求,并将获得的请求交给Engine来处理,从Engine 处获得回应并返回客户。 Tomcat 有两个典型的 Connector,一个直接侦听来自 browser 的 http 请求,一个侦听来自其他WebServer 的请求. Coyote Http/1.1 Connector 在端口8080处侦听来自客户browser的http请求。 Coyote JK2 Connector 在端口8009处侦听来自其他WebServer(Apache)的servlet/jsp代理请求。 4) Engine Engine下可以配置多个虚拟主机 Virtual Host,每个虚拟主机都有一个域名。 当Engine获得一个请求时,它把该请求匹配到某个Host上,然后把该请求交给该Host来处理。 Engine有一个默认虚拟主机,当请求无法匹配到任何一个Host上的时候,将交给该默认Host来 处理。 5) Host Host 代表一个Virtual Host,即虚拟主机,每个虚拟主机和某个网络域名Domain Name相匹配。 每个虚拟主机下都可以部署(deploy)一个或者多个Web App,每个Web App对应于一个Context, 有一个Context path。 当Host获得一个请求时,将把该请求匹配到某个Context上,然后把该请求交给该Context 来处理,匹配的方法是“最长匹配”,所以一个path I的Context将成为该Host的默认Context。 所有无法和其他Context的路径名匹配的请求都将最终和该默认Context匹配。 6) Context 一个Context对应于-个Web Application,一个Web Application由一个或者多个Servlet 组成。 1.7、建立java的Web站点 1在根目录下建立一个web目录并在里面建立一个webapp1目录用于存放网站文件。
[rootlocalhost ~]# mkdir -pv /web/webapp12在webapp1目录下建立一个index.jsp的测试页面。 [rootlocalhost ~]# vim /web/webapp1/index.jsp
% page languagejava importjava.util.* pageEncodingUTF-8%
htmlheadtitleJSP test1 page/title/headbody% out.println(Welcom to test site,http:www.test1.com);%/body
/html3修改Tomcat的server.xml文件。 定义一个虚拟主机并将网站文件路径指向已经建立的/web/webapp1在host段增加context段。
[rootlocalhost ~]# vim /usr/local/tomcat8/conf/server.xml Host namelocalhost appBasewebappsunpackWARstrue autoDeploytrueContext docBase/web/webapp1 path reloadablefalse /Context4关闭Tomcat再重新启动。080
[rootlocalhost ~]# /usr/local/tomcat8/bin/shutdown.sh
Using CATALINA_BASE: /usr/local/tomcat8
Using CATALINA_HOME: /usr/local/tomcat8
Using CATALINA_TMPDIR: /usr/local/tomcat8/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat8/bin/bootstrap.jar:/usr/local/tomcat8/bin/tomcat-juli.jar
[rootlocalhost ~]# /usr/local/tomcat8/bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat8
Using CATALINA_HOME: /usr/local/tomcat8
Using CATALINA_TMPDIR: /usr/local/tomcat8/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat8/bin/bootstrap.jar:/usr/local/tomcat8/bin/tomcat-juli.jar
Tomcat started.5通过浏览器访问http://192.168.136.21:8080/出现下图则说明该Tomcat站点已经配置成功并且已经能够运行JSP了。 2、案例NginxTomcat负载均衡群集
2.1、Tomcat2 server配置 Tomcat2 server配置方法与tomcat1基本相同其中包括
1关闭防火墙。
2确认是否安装JDK、JAVA版本与Tomcat1 server保持一致。
3安装配置Tomcat版本与Tomcat1 server保持一致。
4创建/web/webapp1目录修改Tomcat配置文件server.xml将网站文件目录更改到/web/webapp1/路径下。
5在/web/webapp1/路径下建立index.jsp为了区别测试将测试页面index.jsp的内容更改如下。 [rootlocalhost ~]# vim /web/webapp1/index.jsp
% page languagejava importjava.util.* pageEncodingUTF-8%
htmlheadtitleJSP test2 page/title/headbody% out.println(Welcom to test site,http:www.test2.com);%/body
/html6启动Tomcat浏览器访问Tomcat2 server测试http://192.168.136.22:8080/。
http {
···//省略内容#gzip on;upstream tomcat_server {server 192.168.136.21:8080 weight1;server 192.168.136.22:8080 weight1;}server {listen 80;server_name localhost;#charset koi8-r;#access_log logs/host.access.log main;location / {root html;index index.html index.htm;proxy_pass http://tomcat_server;}2.2、Nginx服务器配置 在Nginx服务器192.168.136.24上安装Nginx反向代理两个Tomcat站点并实现放在均衡。
1关闭防火墙。
2安装相关软件包。
[rootlocalhost ~]# yum -y install pcre-devel zlib-devel openssl-devel 3解压并安装Nginx。
[rootlocalhost ~]# groupadd www
[rootlocalhost ~]# useradd -g www www -s /bin/false
[rootlocalhost ~]# tar xf nginx-1.12.0.tar.gz
[rootlocalhost ~]# cd nginx-1.12.0/
[rootlocalhost nginx-1.12.0]# ./configure --prefix/usr/local/nginx --userwww --groupwww --with-file-aio --with-http_stub_status_module --with-http_gzip_static_module --with-http_flv_module
[rootlocalhost nginx-1.12.0]# make
[rootlocalhost nginx-1.12.0]# make install
4配置nginx.conf。
http {
···//省略内容#gzip on;upstream tomcat_server { //配置负载均衡组server 192.168.136.21:8080 weight1;server 192.168.136.22:8080 weight1;}server {listen 80;server_name localhost;#charset koi8-r;#access_log logs/host.access.log main;location / {root html;index index.html index.htm;proxy_pass http://tomcat_server; //加上此配置代理设定好的tomcat_server负载均衡组}5测试Nginx配置文件是否正确。
[rootlocalhost ~]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful6启动Nginx服务。
[rootlocalhost ~]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf7查看Nginx服务进程。
[rootlocalhost ~]# ps aux | grep nginx
root 10476 0.0 0.0 20548 612 ? Ss 15:16 0:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
www 10477 0.0 0.1 23080 1640 ? S 15:16 0:00 nginx: worker process
root 69146 0.0 0.0 112724 988 pts/0 S 16:56 0:00 grep --colorauto nginx8查看端口号及PID进程号。
[rootlocalhost ~]# netstat -anpt | grep nginx
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 10476/nginx: master 2.3、测试负载均衡效果
1打开浏览器访问http://192.168.136.24/
2不断刷新浏览器测试可以看到由于权重相同页面会反复在以下两个页面来回切换。
第一次访问出现test1的测试页面刷新后第二次访问则会出现test2的测试页面。这说明负载均衡群集搭建成功已经可以在两个Tomcat server站点进行切换了。