Linux&&Tomcat

白昼怎懂夜的黑 提交于 2020-03-01 17:54:50

动静分离

静态文件(.html)交由LNMP服务器处理
动态文件(.php)交由LAMP服务器处理
web-1.1

#部署LNMP环境
#配置
vim  /usr/local/nginx/conf/nginx.conf
    location ~ \.php$ {
        proxy_pass  http://192.168.1.2;
    }

反向代理+负载均衡

web-1.1

#部署LNMP环境
#配置
vim  /usr/local/nginx/conf/nginx.conf
    --snip--
    http {
        --snip--
        #定义服务器池,名称为web_servers。
        upstream  web_servers {
            server  192.168.1.2:80  weight=1;
            server  192.168.1.3:80  weight=1;
        }
        --snip--
        location / {
            root  html;
            index  index.html index.php index.htm;
            #代理到服务器池web_servers
            proxy_pass  http://web_servers;
        }
        
    }
service  nginx  restart

web-1.2

#部署LAMP环境

在nginx中通过upstream模式实现反向代理加负载均衡。
服务器性能越强,可以把weight值设置越大。

部署Tomcat及其负载均衡

web_servers_1.2

#安装JDK(提供Java语言的软件开发工具包,其中包含Java虚拟机(JVM),编写好的Java源程序经过编译形成Java字节码,安装了JDK后,可以使用JVM解释该字节码,从而实现Java的跨平台性。)
tar  xf  jdk-7u65-linux-x64.gz
mv  jdk1.7.0_65  /usr/local/java
#建立Java脚本
vim  /etc/profile.d/java.sh
    export  JAVA_HOME=/usr/local/java  //设置Java根目录
    export  PATH=$PATH:$JAVA_HOME/bin  //在PATH环境变量中添加JAVA根目录下的bin/子目录。
#将Java.sh脚本导入到环境变量,使其生效
source  /etc/profile.d/java.sh
#检测Java版本
java  -version

#安装Tomcat
tar  xf  apache-tomcat-7.0.54.tar.gz
mv  apache-tomcat-7.0.54  /usr/local/tomcat7
#启动tomcat
/usr/local/tomcat7/bin/startup.sh
netstat -anpt | grep 8080
#停止Tomcat
/usr/local/tomcat7/bin/shutdown.sh

#配置Tomcat
cd  /usr/local/tomcat7/
ls
# bin  :  存放windows或Linux平台上启动和关闭Tomcat的脚本文件
# conf  :  存放Tomcat服务器的各种全局配置文件。其中重要的是server.xml和web.xml
# lib  :  存放Tomcat运行需要的库文件(JARS)
# logs  :  存放Tomcat执行时的log文件
# webapps  :  Tomcat的主要web发布目录(包括应用程序示例)
# work  :  存放jsp编译后产生的class文件
ls conf/
# catalina.policy  :  权限控制配置文件
# catalina.properties  :  Tomcat属性配置文件
# context.xml  :  上下文配置文件
# logging.properties  :  日志log相关配置文件
# server.xml  :  主配置文件
# tomcat-users.xml  :  manager-gui管理用户配置文件(Tomcat安装后提供一个manager-gui的管理页面,通过该文件配置可以开启访问)
#web.xml  :  Tomcat的servlet,servlet-mapping,filter,MIME等相关配置
#查看Tomcat测试页
ls webapps/ROOT/index.jsp
vim  conf/server.xml
    <?xml  version='1.0'  encoding='utf-8'?>
    --snip--
    #第一部分:server
    <Server  port="8005"  shutdown="SHUTDOWN">  //Tomcat关闭端口8005,默认只对本机地址开放。可以在本机通过telnet  127.0.0.1 8005实现关闭Tomcat服务操作
    #第二部分:service
    #第三部分:connector
       <Connector  port="8080" protocol="HTTP/1.1"  connectionTimeout="20000"  redirectPort="8443" />  //Tomcat启动的默认端口号8080,可根据需要进行修改
    #第四部分:engine
    #第五部分:host
            <Host  name="localhost"  appBase="webapps"  unpackWARs="true"  autoDeploy="true">  //为Tomcat定义虚拟主机时的配置及日志配置
                <Valve  className="org.apache.catalina.values.AccessLogValue"  directory="logs"  prefix="localhost_access_log."  suffix=".txt"  pattern="%h %1 %u %t &quot;%r&quot; %s %b" />
            
    #第六部分:context
            </Host>
        </Engine>
    </Service>
</Server>


  

Server : Server元素代表了整个Catalina的servlet容器
Service : Service是这样一个集合,它由一个或多个Connector组成,以及一个Engine.负责处理所有Connector所获得的客户请求
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代理请求
Engine.Engine下可以配置多个虚拟主机Virtual Host,每个虚拟主机都有一个域名。当Engine获得一个请求时,它把该请求匹配到某个Host上,然后把请求交给该Host来处理。Engine有一个默认虚拟主机,当请求无法匹配到任何一个Host上的时候,将会交给默认Host来处理
Host。代表一个Virtual Host,虚拟主机。每个虚拟主机和某个网络域名Domain Name相匹配。每个虚拟主机下都可以部署(deploy)一个或多个web App,每个web App对应一个Context,有一个Context path。当Host获得一个请求时,将把该请求匹配到某个Context上,然后把该请求交给该Context来处理,匹配的方法是“最长匹配”,所以一个path==“”的Context将成为Host的默认Context,所有无法和其他Context的路径名匹配的请求都将最终和该默认Context匹配。
Context。一个Context对应于一个Web Application,一个Web Application由一个或多个servlet组成。

web_servers_1.1

#配置反向代理加负载均衡
vim  /usr/local/nginx/conf/nginx.conf
    --snip--
    http {
        --snip--
        #定义服务器池,名称为web_servers。
        upstream  web_servers {
            server  192.168.1.2:8080  weight=1;
            server  192.168.1.3:8080  weight=1;
        }
        --snip--
        #location ~ \.jsp$ {
        location / {
            root  html;
            index  index.html index.php index.htm index.jsp;
            #代理到服务器池web_servers
            proxy_pass  http://web_servers;
        }
        
    }
service  nginx  restart

配置Tomcat站点


#建立Java的web站点
mkdir  -pv  /web/webapp1
# -p  :  创建文件、目录
# -v  :  显示创建过程
#创建index.jsp测试页面
vim  /web/webapp1/index.jsp
  <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
  <html>
      <head>
          <title>JSP test1 page</title>
      </head>
      <body>
          <% out.println("wellcome to test site.www.xingfafa.com")%>
      </body>
  </html>
#修改Tomcat的server.xml文件
##定义一个虚拟主机,将网站文件路径指向已经建立的/web/webapp1.
vim  /usr/local/tomcat7/conf/server.xml
    --snip--
    <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
        <Context docBase="/web/webapp1" path="" reloadable="fales">
        #docBase  :  web应用的文档基准目录
        #reloadable  :  设置监视“类”是否变化
        #path=""  :  设置默认“类”
        </Context>
#重启Tomcat生效
/usr/local/tomcat7/bin/shutdown.sh
/usr/local/tomcat7/bin/startup.sh
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!