您的位置:首页 > 运维架构 > Tomcat

Tomcat介绍---SSL

2012-09-09 20:15 288 查看
一. WEB相关

容器:实现了什么规范的服务器就称为什么容器

常见的web容器:webLogect JBOSS Tomcat

二. Tomcat安装及启动

安装路径不能有空格及中文字符、特殊字符

安装后需配置JAVA_HOME环境变量,指定为jdk的安装根目录。

不能启动的原因:

1. JAVA_HOME路径后不能有;号,会导致启动是一闪而过。

2. 端口占用问题,可用netstat –nao查看目前使用的端口。

修改端口:server.xml

CATALINA_HOME环境变量:当有多个Tomcat服务器存在时,如果设置了CATALINA_HOME环境变量,所有的Tomcat启动的都是此变量指定的Tomcat。

三. Tocmat目录结构

bin:存放启动或管理Tomcat的一些脚本

conf:存放Tomcat的配置文件。

lib:Tomcat运行依赖的jar包(能被受管理的所有应用访问)

logs:存放Tomcat的日志

webapps:存放JavaWeb应用。(该目录中的每一个文件夹代表一个JavaWeb应用)

work:Tomcat的工作目录

四. JavaWeb应用的标准目录结构

MyApp 应用名称

WEB-INF
必须有,大写一致,放入此目录的资源隐藏,外部只能间接的访问

classes
存放class文件

lib 存放该应用所要用到的jar包

web.xml
当前应用的配置文件

五. 部署应用到Tomcat中

1. 开放式目录,把应用直接copy至webapps目录下。

2. 发布war包,在应用的目录下 jar –cvf MyApp.war .

然后放置webapps目录下,Tomcat自动将war包解压部署。注意:如果删除了war包,部署的应用也会删除。自动解压部署可以在server.xml文件中配置。

六. Tomcat的组成结构

conf/server.xml

Host—代表虚拟主机

Context—代表主机中的某个应用

1. 配置虚拟目录

方式一、(不建议使用。修改了server.xml文件后,必须重新启动Tomcat才会生效)

修改server.xml在Host元素内部增加以下内容:

<Context path="/MyPPP" docBase="c:\tmp\MyApp"/>

path:是虚拟目录,一般以/开头

docBase:应用的真实目录路径

方式二、建议使用

在TOmcat安装目录\conf\[enginename]\[hostname]\建立一个xml文件,文件名就是虚拟访问入口(path的作用)

文件中只需要指定真实路径即可

<Context docBase="c:\tmp\MyApp"/>

案例:配置默认端口、默认应用及默认主页
http://localhost(默认端口是80)
显示MyApp\1.html

更改应用的默认主页:修改web.xml

在根元素中添加以下内容:

<welcome-file-list>

<welcome-file>p.html</welcome-file>

<welcome-file>1.html</welcome-file>

</welcome-file-list>

2. 设置虚拟主机

修改server.xml,

<Host name="www.itcast.cn" appBase="...."/>

name:主机的名称

appBase:存放该网站所有应用的文件夹路径

设置后修改操作系统的host文件

七. SSL Server Socket Layer

一种保证网络上的两个节点进行安全通信的协议,建立在SSL上的HTTP被称为HTTPS协议,HTTPS协议的默认端口号为443。

作用:给数据进行加密,验证对方身份

公钥->私钥

被公钥加密的数据要用私钥解,相反。

SSL通过安全证书来证明客户或服务器的身份。

获取证书的两种方式:

1. 从权威机构申请,需交费。只对一个IP有效

Certificate Authority,CA和VeriSign和Thawte

2. 创建自我签名的证书

如果只需要对数据进行加密,而不用验证对方身份。可以自己创建一个证书。

a) 创建证书

keytool –genkey –alias tomcat –keyalg RSA

以上命令将在操作系统的用户目录下生成 .keystore 文件

b) 配置SSL连接器

在Tomcat中的server.xml文件中

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" />

添加属性:keystoreFile=”keystore文件的目录”

keystorePass = “指定keystore密码,不指定默认为changeit”

c) 访问SSL的web站点
https://localhost:8443
注意:在配置SSL双向握手后,如果启动Tomcat报错。需将Connector修改如下代码:

protocol=”HTTP/1.1”替换为:protocol=”org.apache.coyote.http11.Http11Protocol”
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: