对于apache开源项目中tomcat的认识,大多停留在Windows下,这次我通过一个简单的实例来介绍一下在linux下如何搭建tomcat环境,并且部署一个web项目。

先从基本安装开始,可别小看linux下的文件安装,那可不是windows下点击next就可以完成,但也并不复杂,重要的是我们学会怎么用快速理解和掌握它,那么一切就变得容易多了,开始吧,当然在安装部署tomcat之前必须先安装好jdk1.6的环境,具体见上一遍博客linux下jdk的安装。

1、先从Apache的官方网站下载下来tomcat6.0系列的文件,http://www.apache.org/tomcat/在这里找到Tomcat6.0的linux安装文件,它跟windows是不一样的,在官网上有相应的说明,linux版的tomcat是需要编译源代码的文件,如下载下来的文件为:apache-tomcat-6.0.30.zip

2、将下载的文件通过ftp传输到linux中,这里我推荐远程连接工具SSH,linux远程连接工具比较多。

3、解压apache-tomcat-6.0.30.zip,命令为:unzip apache-tomcat-6.0.30.zip得到apache-tomcat-6.0.30这个目录,将目录拷贝到/opt/,然后为了方便改名为/opt/tomcat即可。

4、修改环境变量,将一下的变量配置放在之前配置jdk环境变量的后面即可,如下:

在目录/etc下修改profile文件,使用命令为:vi /etc/profile

export CATALINA_HOME=/opt/tomcat

export CLASSPATH=.:$JAVA_HOME/lib:$CATALINA_HOME/lib

export PATH=$PATH:$CATALINA_HOME/bin

配置完成之后执行命令:source /etc/profile,如果没有提示错误,证明配置ok

可以通过echo $CLASSPATH来查看环境配置

5、启动tomcat服务

将目录切换到opt/tomcat/bin执行sh catalina.sh,提示信息如下:

The BASEDIR environment variable is not defined correctly

This environment variable is needed to run this program

通过情况配置完成之后就会报此类错误提示,该提示表示bin目录下相关.sh后缀文件没有执行权限,使用命令chmod +x *.sh来给所有的.sh文件以执行权限,

再执行sh catalina.sh或者sh startup.sh,便提示如下信息表示配置ok:

Using CATALINA_BASE:  /opt/tomcat

Using CATALINA_HOME:  /opt/tomcat

Using CATALINA_TMPDIR: /opt/tomcat/temp

Using JRE_HOME:        /usr/jdk1.6.0_23

Using CLASSPATH:      /opt/tomcat/bin/bootstrap.jar

6、查看tomcat的服务端口8080

命令:netstat -ntl | grep 8080,提示正常,在从windows客户端使用tenlet ip 8080看看什么情况,结果提示端口没有被开启,继续检查防火墙如下:

找到/etc/sysconfig/,vi iptables 在该防火墙配置文件中加入开放8080端口的配置如下:

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

还有一种方法就是关闭防火墙,命令为:service iptables stop即可。

7、在客户端访问tomcat首页

http://localhost:8080/如果正常显示tomcat首页表明配置ok。

8、部署一个web项目

将文件为ssh2.war的包上传到opt/tomcat/webapps目录下,然后重启tomcat,如下命令:./catalina.sh run,部署ssh2.war并启动tomcat

在客户端输入http://localhost:8080/ssh2,显示登录页面表明项目部署成功。

通过以上简单的对tomcat的安装和部署进行介绍,并将安装部署过程遇到的问题也都详细的列举了,如果只看不练的话,总归只是看到的,我也是动手自己操作了一遍总归了如上的过程。作为一个测试人员,搭建测试环境是我们工作过程不可或缺的一项,而且当前以linux的影响力来说,大部分web服务都将在linux下部署,基于性能和安全性等等方面,这都是一个发展趋势,所以多研究linux的知识将会大大提高我们的各项技能。

linux系统上部署一个web项目的更多相关文章

  1. Linux CentOS下部署Java Web项目

    本文讲解如何在Linux CentOS下部署Java Web项目的步骤. 一.环境准备: (1)Linux CentOS (2)apache-tomcat-9.0.10 (3)XShell 二.启动t ...

  2. 总想自己动动手系列·1·本地和外网(Liunx服务器上部署的web项目)按照自定义的报文格式进行交互(准备篇)

    一.准备工作 (1)有一台属于自己的云服务器,并成功部署和发布一个web项目(当然,本质上来说Java-Project也没问题),通过外网IP可以正常访问该web项目. 需要说明的是:任何web项目, ...

  3. 总想自己动动手系列·2·本地和外网(Liunx服务器上部署的web项目)按照自定义的报文格式进行交互(完结篇)

    一.准备工作 (1)创建一个web-project工程,部署本地可正常访问,部署在云服务上可访问. (2)理解如何在web.xml文件中配置过滤器,和创建一个自定义的过滤器. (3)懂得如何打war包 ...

  4. [傻瓜式一步到位] 阿里云服务器Centos上部署一个Flask项目

    网络上关于flask部署Centos的教程有挺多,不过也很杂乱. 在我第一次将flask上传到centos服务器中遇到了不少问题,也费了挺大的劲. 在参考了一些教程,并综合了几个教程之后才将flask ...

  5. 【Centos】【Python】【Flask】阿里云上部署一个 flask 项目

    1. 安装 python3 和 pip3 参考:http://www.cnblogs.com/mqxs/p/8692870.html 2.安装 lnmpa 集成开发环境 参考:http://www.c ...

  6. 关于Windows Server 服务器 安装tomcat部署Java Web 项目的问题

    我遇到的问题是:不知道怎么配置,感觉在服务器上部署一个web项目,应该是很高大上,步骤应该很繁琐,但是,事实却不是那样.配置反而挺简单. tomcat配置:在tomcat安装目录中的conf文件夹下有 ...

  7. 阿里云部署Java web项目初体验(转)/linux 上配置jdk和安装tomcat

    摘要:本文主要讲了如何在阿里云上安装JDK.Tomcat以及其配置过程.最后以一个实例来演示在阿里云上部署Java web项目. 一.准备工作 购买了阿里云的云解析,和云服务器ecs. 2.下载put ...

  8. 阿里云部署Java web项目初体验(转)

    林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主要讲了如何在阿里云上安装JDK.Tomcat以及其配置过程.最后以一个实例来演示在 ...

  9. 阿里云部署Java web项目

    林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主要讲了如何在阿里云上安装JDK.Tomcat以及其配置过程.最后以一个实例来演示在 ...

随机推荐

  1. 机器视觉:Convolutional Neural Networks, Receptive Field and Feature Maps

    CNN 大概是目前 CV 界最火爆的一款模型了,堪比当年的 SVM.从 2012 年到现在,CNN 已经广泛应用于CV的各个领域,从最初的 classification,到现在的semantic se ...

  2. win10 135/445端口关闭

    135端口关闭 见[在 Windows 下关闭135/139/445端口的图文方法] 445端口关闭 打开控制面板-->网络和共享中心-->更改适配器设置-->右键点击正在使用的网卡 ...

  3. gradle 命令行

    1. 帮助 ./gradlew -h 2. gradle 可执行tasks gradle tasks or ./gradlew tasks 3. gradle help 任务 帮助了解每个task 的 ...

  4. A SQLiteConnection object for database '/data/data/.../databases/....db' was leaked!

      详细异常: A SQLiteConnection object for database '/data/data/.../databases/....db' was leaked!  Please ...

  5. laravel中好用的支付安装包

    是包括支付宝和微信的支付 准用包,在测试中 https://github.com/yansongda/laravel-pay 这个包,看上去很好但是composer require时,要求php太高, ...

  6. mysql事务隔离级别测试

    隔离性mysql提供了4种不同的隔离级别以支持多版本并发控制(MVCC)较低级别的隔离通常可以执行更高的并发,系统的开销也更低read uncommited(未提交读)read commited(提交 ...

  7. 关于Python导入其他目录中的类

    在需要导入的某个类的目录中,添加一个__init__.py的文件,

  8. 面向对象银角大王补充2-self就是调用当前方法的对象-静态字段,公有属性-封装的理解-继承的理解,普通方法,静态方法

    self是什么,就是一个函数,就是一个形式参数 4.self就是调用当前方法的对象 静态字段,公有属性 静态字段使用场景,每个对象中保存相同的东西时,可以使用静态字段,公有属性 5.封装的理解 类中封 ...

  9. 22 mysql有那些”饮鸩止渴”提高性能的方法?

    22 mysql有那些”饮鸩止渴”提高性能的方法? 正常的短连接模式是连接到数据库后,执行很少的SQL语句就断开,下次需要的时候再重新连接.如果使用的是短连接,在业务高峰期的时候,就可能出现连接数突然 ...

  10. IDA Pro 权威指南学习笔记(六) - 次要的 IDA 显示窗口

    十六进制窗口 IDA 十六进制窗口可以配置为显示各种格式,并可作为十六进制编辑器使用 默认情况下,十六进制窗口显示程序内容和列表的标准十六进制代码,每行显示 16 个字节,以及其对应的 ASCII 字 ...