Tomcat web 应用服务器基础

jdk+tomcat安装

1、运行Tomcat为什么要装jdk? http://blog.sina.com.cn/s/blog_753bc97d0102w5rd.html

因为tomcat是用java写的,所以运行需要JRE,就是JAVA运行时刻环境,所以必须通过安装JDK来得到这个运行环境。

tomcat目录结构

2、实验环境

服务器系统:Windows server2008 x64位

Java环境:jdk1.6.0_32、jdk1.7.0_80

Web应用:apache-tomcat-6.0.45、apache-tomcat-7.0.27

3、版本对应关系

4、正式安装

4.1 、获取:

到官网下载正版软件

Jdk:http://www.oracle.com/technetwork/java/javase/archive-139210.html

Tomcat:http://tomcat.apache.org/

4.2、 开始安装

①      安装

双击JDK安装包,点击下一步

更改JDK安装路径,可以更改安装在其他盘符。点击"更改"按钮,选定相关路径.

接下来还有更改JRE安装路径,最好和JDK保持在一个父路径下。点击"更改"按钮,选择安装路径

②     配置Java环境变量

右击【我的电脑】---【属性】-----【高级系统设置】---【环境变量】

JAVA_HOME

变量需新建,变量值填写jdk的安装目录C:\Java\jdk1.6.0_32

Path

变量修改:在变量值最后输入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;(注意原来Path的变量值末尾有没有;号,如果没有,先输入;号再输入上面的代码);

CLASSPATH

变量需新建,变量变量值填写  .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(注意最前面有一点)系统变量配置完毕

③     Java测试

检验是否配置成功 运行cmd 输入 java -version (java 和 -version 之间有空格)

若如图所示 显示版本信息 则说明安装和配置成功。

④     安装Tomcat解压版

解压下载的Tomcat包,运行目录下的bin/startup.bat(双击)

访问:http://127.0.0.1:8080(8080是它的默认端口)

⑤     Tomcat端口配置:/${tomcat_home}/conf/server.xml

    <Connector port="" protocol="HTTP/1.1"

               connectionTimeout=""

               redirectPort=""

               debug=""

               disableUploadTimeout="true"

               URIEncoding="UTF-8"/>

运行多个tomcat时候的端口配置

端口冲突会导致服务启动失败,表现为闪退或提示端口占用报错。

Tomcat端口配置文件:/${tomcat_home}/conf/server.xml

端口设置原则:不能与服务器其他端口冲突原则

1、应用访问端口

server.xml文件中找到以下代码:

<connector port=""protocol="HTTP/1.1"connectionTimeout=""

redirectPort=""/>

此连接在访问http时用到,修改了8080,后再访问就要以地址加修改后的端口

2、 Shutdown端口

<Server port="" shutdown="SHUTDOWN">

8005端口是用来关闭Tomcat服务的端口,如果此端口被占用,可在配置文件中将8005改成其他端口

3、  和其他服务器建立链接的端口

<Connector port="" protocol="AJP/1.3" redirectPort="" />   

此连接器负责和其他的HTTP服务器建立连接,再把Tomcat与其他的HTTP服务集成时需要使用此连接器。如果此端口被占用,可在配置文件中将8009改成其他端口

4、  HTTPS服务端口

<Connector port="" protocol="HTTP/1.1" SSLEnabled="true"

maxThreads="" scheme="https" secure="true" clientAuth="false"

keystoreFile="D:\Tomcat6.0\conf\tomcat.key" keystorePass=""

sslProtocol="TLS" /> 

此连接器的作用是启动HTTPS服务,一般的情况此段内容是被注释掉的,只有开启HTTPS服务时才会放开使用,如果此端口被占用则修改8443端口为其他没被占用的端口,并且需要将(1)和(3)中的也要修改

注:修改成功后,为了使新设置的端口生效,还需要重新启动Tomcat服务器。

如何同时运行多个tomcat版本

场景:一直以来现网的程序运行环境都为Tomcat6+jdk6,现由于业务需要现网的部分应用的Tomcat版本需要升级,从Tomcat6升级到7,Tomcat7版本需要Java7版本的支持,但是现在出现了矛盾,Tomcat6和Tomcat7如何在一台服务器上各自配置不同的JDK

方案:将Tomcat配置文件中的环境变量改为绝对路径

假设此Tomcat需指定的JDK版本的目录为:E:\Java\jdk1.7

1、 修改Tomcat的bin文件夹下面的catalina.bat文件,如下:(一处地方修改)

修改前:

echo Using JAVA_HOME:       "%JAVA_HOME%"

修改后:

echo Using JAVA_HOME:       "E:\Java\jdk1.7"

2、   修改bin文件夹下面的setclasspath.bat文件,如下:(三处地方修改)

修改前:

set "JRE_HOME=%JAVA_HOME%"     (ps:这个有两处地方,修改一处就行了,不行就两处都修改)

set _RUNJAVA="%JRE_HOME%\bin\java.exe"

set _RUNJDB="%JAVA_HOME%\bin\jdb.exe"

修改后:

set "JRE_HOME=E:\Java\jdk1.7"

set _RUNJAVA="E:\Java\jdk1.7\bin\java.exe"

set _RUNJDB="E:\Java\jdk1.7\bin\jdb.exe"

3、启动tomcat

Tomcat基本的更多相关文章

  1. Tomcat一个BUG造成CLOSE_WAIT

    之前应该提过,我们线上架构整体重新架设了,应用层面使用的是Spring Boot,前段日子因为一些第三方的原因,略有些匆忙的提前开始线上的内测了.然后运维发现了个问题,服务器的HTTPS端口有大量的C ...

  2. docker——容器安装tomcat

    写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...

  3. Tomcat shutdown执行后无法退出进程问题排查及解决

    问题定位及排查 上周无意中调试程序在Linux上ps -ef|grep tomcat发现有许多tomcat的进程,当时因为没有影响系统运行就没当回事.而且我内心总觉得这可能是tomcat像nginx一 ...

  4. 记一次tomcat线程创建异常调优:unable to create new native thread

    测试在进行一次性能测试的时候发现并发300个请求时出现了下面的异常: HTTP Status 500 - Handler processing failed; nested exception is ...

  5. Linux CentOS 配置Tomcat环境

    一.下载Tomcat 下载Tomcat方式也有两种,可以参考我的前一篇博文Linux CentOS配置JDK环境,这边就不再赘述. 二.在Linux处理Tomcat包 1.创建tomcat文件夹 mk ...

  6. 在Linux虚拟机下配置tomcat

    1.到Apache官网下载tomcat http://tomcat.apache.org/download-80.cgi 博主我下载的是tomcat8 博主的jdk是1.8 如果你们的jdk是1.7或 ...

  7. tomcat开发远程调试端口以及利用eclipse进行远程调试

    一.tomcat开发远程调试端口 方法1 WIN系统 在catalina.bat里:  SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compi ...

  8. Eclipse中启动tomcat报错java.lang.OutOfMemoryError: PermGen space的解决方法

    有的项目引用了太多的jar包,或者反射生成了太多的类,异或有太多的常量池,就有可能会报java.lang.OutOfMemoryError: PermGen space的错误, 我们知道可以通过jvm ...

  9. mac下安装及配置tomcat

    mac下的软件不像windows下的程序那样写注册表,对于tomcat的安装来说,在mac下是名符其实的绿色软件,具体操作如下: 1.到 apache官方主页 下载完整 tar.gz文件包.(没有专门 ...

  10. 设置tomcat远程debug

    查看端口占用情况命令: netstat -tunlp |grep 8000 tomcat 启动远程debug: startup.sh 中的最后一行 exec "$PRGDIR"/& ...

随机推荐

  1. geotrellis使用(四十二)将 Shp 文件转为 GeoJson

    前言 一个多月没有写博客了,今天尝试着动笔写点. 原因很多,最重要的原因是我转行了.是的,我离开了开发岗位,走向了开发的天敌-产品经理.虽然名义上是产品经理,但是干的事情也很杂,除了不写代码,其他的都 ...

  2. JAVA课程课后作业之使用递归完成回文

    一.思路 1.我的想法是利用数组的做法来进行,先是用scanner录入一个String类 2.然后就是将String转化成char数组 3.递归的就是第一个和最后一个对比,然后第一个加一,最后一个减一 ...

  3. Web 端自动化测试

    一.环境搭建 准备工具如下:下载 python[python 开发环境](http://python.org/getit/) 下载setuptools: [python 的基础包工具](http:// ...

  4. python中文分词库——pyltp

    pyltp在win10下安装比较麻烦,因此参考以下安装方式, 1.下载 win10下python3.6 2.安装 下载好了以后, 在命令行下, cd到wheel文件所在的目录, 然后使用命令pip i ...

  5. DWZ富客户端框架+DWZ简介及其使用+DWZ讨论组

    DWZ富客户端框架+DWZ简介及其使用+DWZ讨论组 地址: DWZ富客户端框架:http://jui.org/#_blank DWZ简介及其使用:http://blog.sina.com.cn/s/ ...

  6. java 中重写toString()方法

    toString()方法 一般出现在System.out.println(类名.toString()); toString()是一种自我描述方法 本身返回的是 getClass().getName() ...

  7. mysql 时间戳的使用!

    时间转时间戳方法: unix_timestamp() 记录时间戳的类型: bigint 时间戳转时间的方法:from_timestamp() 感谢水哥给的截图!

  8. C++11 std::ref使用场景

    C++本身有引用(&),为什么C++11又引入了std::ref(或者std::cref)? 主要是考虑函数式编程(如std::bind)在使用时,是对参数直接拷贝,而不是引用.如下例子: # ...

  9. mybatis+oracle实现简单的模糊查询

    第一种 concat select * from cat_table where cat_name like concat(#{catName},'%') --单个百分号 select * from ...

  10. 关于mysql中like查询是否通过索引的测试

    测试mysql的like语句是否通过索引时得到结果如下: 图片1: 图片2: 图片3: 通过上述3组图片我想大家很容易愤青我使用的'%8888888%','%8888888'和'8888888%'3中 ...