Tomcat简单介绍(配置)
来源:互联网 发布:杭州下沙淘宝拍摄基地 编辑:程序博客网 时间:2024/06/05 16:31
Tomcat
Tomcat简介前驱
通过Socket,在浏览器上显示本地的xx.html
- 编码:
public class MyServer { public static void main(String[] args) throws Exception { ServerSocket ss = new ServerSocket(9999); Socket s = ss.accept(); OutputStream os = s.getOutputStream(); InputStream is = new FileInputStream("D:/hello.html"); byte[] buffer = new byte[1024]; int len = -1; while ((len = is.read(buffer)) != -1) { os.write(buffer, 0, len); } s.close(); ss.close(); }}
- 在浏览器上的访问地址:
http://localhost:9999/
,在页面上就会显示hello.html里面的内容
常见的服务器
- WebLogic BEA
- WebSphereAS IBM
- Jboss 开源组织->红帽
- Tomcat Apache
基本概念及常识
- 服务器:提供网络访问的程序。
- 容器:支持什么技术的服务器就叫做什么容器,比如Tomcat支持Servlet/JSP技术,又称为Servlet容器。
- 端口:服务器上的每个网络服务程序都对应一个端口。Tomcat默认对应的端口号是8080,web应用的默认端口号是80。
- 查看端口是否被占用:cmd下
netstat -a
Tomcat简介
Tomcat目录
- bin:运行Tomcat的相关命令
- conf:配置文件所在的目录
- lib:Tomcat服务器运行依赖的jar包
- logs:存放启动和运行日志
- webapps:存放要运行的web应用,该目录中的每一个文件夹都是独立的web应用
Tomcat类加载器要加载一个MyClass的类的先后顺序
- 在JavaWeb应用的WEB-INF/classes中查找MyClass.class文件。
- 在JavaWeb应用的WEB-INF/lib目录下的JAR文件中查找MyClass.Class文件。
- 在Tomcat的lib子目录下直接查找MyClass.class文件。
- 在Tomcat的lib子目录下JAR的文件中查找MyClass.class文件。
从上面得知:Tomcat目录中lib中的jar为Tomcat和其管理的所有JavaWeb应用服务,每个应用中的lib中的jar只为当前web应用服务。
发布JavaWeb应用
- 开发式目录:直接将应用拷贝到webapps目录下。
- war包:进入到web应用目录,执行
jar -cvf hsxWeb.war .
命令,在将hsxWeb.war放到webapps目录下。
Tomcat的组成结构
- Tomcat本身由一系列可配置的组件构成,其中核心组件是Servlet容器组件,它是所有其他Tomcat组件的顶层容器。每个组件都可以在Tomcat安装目录/conf/server.xml文件中进行配置,每个Tomcat组件在server.xml文件中对应一种配置元素。以下用XML的形式展示了各种Tomcat组件之间的关系:
<Server> 代表整个Servlet容器组件,是最顶层元素,可以包含一个或多个<Service>元素。 <Service> 包含一个<Engine>元素一级一个或者多个<Connector>元素,这些<Connector>共享同一个<Engine>。 <Connector/> 代表和客户程序实际及交互的组件,负责接收客户请求,以及向客户返回响应。 <Engine> 每个<Service>元素只能包含一个<Engine>元素,它处理在同一个<Service>中所有<Connector>接收到的客户请求。 <Host> 在一个<Engine>中可以包含多个<Host>,它代表一个虚拟主机(网站),它可以包含一个或者多个web应用。 <Context/> 使用最频繁的元素,代表了运行在虚拟主机上的单个Web应用。 </Host> </Engine> </Service></Server>
- Tomcat组件结构图
配置虚拟目录元素
- Context元素:配置单个web元素
- 示例:
<Context path="/web2" docBase="F:\Learn"/>
- Context元素中的属性值:
- path:URL访问的入口
- docBase:web应用的存放路径(开放式目录结构或者war文件的路径)
- className:指定实现Context组件的Java类的名字,这个类必须实现org.apache.catalina.Context接口,该属性的默认值是org.apache.catalina.core.StandardContext。(不建议改动)
- reloadable:
web应用中的资源改动后,是否自动加载。默认值为FALSE。
- 配置方式:
- 在conf/server.xml中经行配置,在元素中增加元素:
<Context path="/web2" docBase="F:\Learn"/>
,不建议使用,因为配置后,每次都要重启。 - 在conf/Catalina/localhost中增加需要的xml文件,比如:appname.xml,appname就是访问路径,在该xml文件中增加以下内容:
<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="D:\Learn"/>
浏览器访问的URL是http://localhost:8080/appname/xx.html
这是建议使用的方式。
- 在conf/server.xml中经行配置,在元素中增加元素:
当加载一个web应用时,会依次按照以下五种法师尝试查找web应用的元素,直到查到为止:
- 到Tomcat安装目录/conf/context.xml文件中查找元素。适用于所有的web元素。
- 到Tomcat安装目录/conf/Enging[默认的是Catalina]/localhost[或者其他]/context.xml文件中查找元素,适用于所有的web应用。
- 到Tomcat安装目录/conf/Enging[默认的是Catalina]/localhost[或者其他]/contextpath.xml文件中查找元素,适用于单个web应用。
- 到web应用的META-INF/context.xml文件中查找元素,只适用于当前的web应用。
- 到Tomcat安装目录/conf/server.xml文件中查找元素。适用于单个web元素。
注:如果仅仅是为了单个web应用配置元素,可以优先采用第三种配置方式。
配置虚拟主机,即配置一个网站
配置虚拟主机步骤:
1. 打开conf/server.xml文件,增加元素:<Host name="www.hsx.com" appBase="D:\hsxapps"></Host>
,其中相关的属性说明:
- name:主机域名。
- appBase:该主机下的所有应用所在的文件目录。
- unpackWARs:war包是否解压。
2. 在C:\Windows\System32\drivers\etc中的hosts文件增加127.0.0.1 www.hsx.com
。
注:当然可以在这个虚拟主机中配置虚拟目录。
Tomcat配置用户名与密码
- 在conf/tomcat-users.xml中配置,如下:
<tomcat-users> <role rolename="manager-gui"/> <user username="hsxsssss" password="hsxsssss" roles="manager-gui"/></tomcat-users>
在Tomcat中配置SSL(Server Socket Layer)
- 在网络上,信息在由源主机到目标主机的传输过程中会经过其他计算机,网络上的信息有可能被非法分子监听,从而导致个人隐私泄露。
- Netspace公司提出了SSL(Server Socket Layer)协议,旨在达到在开放网络上安全、保密第传输信息的目的。
- SSL是一种保证网络上的两个节点进行安全通信的协议,建立在SSL协议上HTTP被称为HTTPS协议,保证通信数据的保密性和完整性,并且验证通信双方验证对方的身份。
- 加密技术的原理:数据从一端发送到另一端,发送者先对数据加密,然后再把它发送给接受者。这样,在网络上传输的是经过加密的数据,如果有人非法截获了这些书籍,由于没有解密的秘钥,就无法获得真正的原始数据;接受者受到加密的数据后,先对数据解密,然后再处理。
- SSL通过安全证书证明客户端或服务器的身份。当客户端通过安全的连接和服务器通信时,服务器会先向客户端出示它的安全证书,而每一个证书在世界范围内都是唯一的。
- 创建安全证书的两种方式:
- 从权威机构中获得证书,Certificate Authority[CA]、VeriSign、Thawte,这些需要付费。
- 创建自己的签名的证书。
创建自己的签名的证书
- 准备安全证书
- 配置Tomcat的SSL连接器(Connector)
具体步骤:
1.准备安全证书 keytool -genkey -alias tomcat - keyalg RSA -keystore d:\keystore
简要说明:
- SUN公司提供了制作证书的工具keytool。在JDK1.4以上版本中都包含了这一工具
- -genkey:生成一对非对称秘钥。
- -alias:指定秘钥的别名,该别名是公开的。
- -keyalg:指定加密算法,此处采用通用的RSA算法。
- -keystone:希望生成的keystore文件存放在其他目录中
2. 配置Tomcat的SSL连接器(Connector)简要说明:
- 在Tomcat的/conf/server.xml文件中,已经提供了现成的配置SSL连接器的代码,只要把注释去掉即可
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" />
- keystoreFile:指定keystore文件的存放位置,可以指定绝对路径。如果此项没有设定,在默认情况下,Tomcat将从当前操作系统用户的用户名目录下读取名为”.keystore”的文件。
- keystorePass:指定keystore的密码,如果此项没有设定,在默认情况下,Tomcat将使用”changeit”密码。
- 注: 在配置tomcat的SSL双向握手时,由于6.0.33中默认启用了APR(APR是通过JNI访问的可移植库,可以提高Tomcat的性能和伸缩性),所以采用传统的配置方式会报异常,需要把
protocol="HTTP/1.1"
改为protocol="org.apache.coyote.http11.Http11Protocol
- 示例:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="c:\.keystore" keystorePass="123456"/> - 浏览器访问的URL地址:
https://localhost:84443/
Tomcat的环境变量设置
这里不介绍,其他博客非常多。
- Tomcat简单介绍(配置)
- Tomcat服务器简单介绍和配置
- Https传输的简单介绍及Tomcat配置
- 简单介绍 Apache、Tomcat
- Tomcat简单介绍
- Tomcat简单介绍
- Apache Tomcat(一)Apache Tomcat的简单介绍
- 【Tomcat】tomcat简单介绍,安装以及启动(一)
- 【Tomcat】tomcat简单介绍,安装以及启动(一)
- 【Tomcat】tomcat简单介绍,安装以及启动(一)
- 【Tomcat】tomcat简单介绍,安装以及启动(一)
- Tomcat介绍及配置
- tomcat 配置介绍
- Tomcat配置及介绍
- tomcat介绍和配置
- Tomcat介绍及配置
- JS Cors Tomcat配置(简单,可用)
- (Ubuntu)Nginx+Tomcat的简单配置
- Not recognizing known sRGB profile
- 正则表达式
- 关于Java 23种设计模式的有趣见解
- 无向图最小生成树(prim算法)
- 博客测试
- Tomcat简单介绍(配置)
- xcode 添加ffmpeg所引起的编译问题
- Android编译过程详解(一)
- 时序图示例
- 工控协议扫描工具
- didMoveToSuperview
- Android NDK开发method GetStringUTFChars’could not be resolved
- git的使用
- 二叉树的后序遍历