linux环境下部署tomcat
服务器环境:Red Hat Enterprise Linux Server release 6.5
安装部署包:apache-tomcat-8.0.30.tar.gz、jdk-8u66-linux-x64.gz
工具PSCP.EXE实现本地windows下的文件下载或传输到linux上(也可以使用其他辅助工具xftp、secureCRT等),将下载好的tomcat、jdk文件与PSCP.EXE放在同一文件夹下,按照以下步骤操作。
一、上传tomcat、jdk文件到服务器。具体操作如下:
1.windows下打开命令窗口
2.cd到存放的文件目录
3.将文件上传到服务器的tmp文件夹下(可以自行指定其他目录),输入命令:pscp.exe apache-tomcat-8.0.30.tar.gz root@10.40.2.96:/tmp/
4.输入账户密码,中间可能会出现询问是否保存key(自行选择是否保存),即可上传
5.继续上传jdk文件(PSCP.EXE不能批量上传,可以参考使用PSFTP.EXE)
二、部署jdk
1.在当前目录解压源码包。命令:tar -zxvf jdk-8u66-linux-x64.gz
2.查看当前目录下是否存在目录jdk1.8.0_66。命令:ls或ll
3.将目录移动到/usr/local下,为简单起见重命名为jdk8。命令:mv jdk1.8.0.66 /usr/local/jdk8。(PS:usr目录是unix system resource的缩写,可不是user哦!其中local是本地系统管理员用来自由添加程序的目录)
4.设置jdk的环境变量,修改/etc/profile,输入命令:vi /etc/profile,在末尾添加如下内容:
JAVA_HOME=/usr/local/jdk8 #根据实际目录调整
JRE_HOME=/usr/local/jdk8/jre #根据实际目录调整
PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH
5.使环境变量生效。命令:source /etc/profile
6.检测是否配置成功。命令:java -version #检查版本
三、部署tomcat
1.在当前目录解压源码包。命令:tar -zxvf apache-tomcat-8.0.30.tar.gz
2.查看当前目录下是否存在目录apache-tomcat-8.0.30。命令:ls或ll
3.将目录移动到/usr/local下,重命名为tomcat8。命令:mv apache-tomcat-8.0.30 /usr/local/tomcat8
4.配置环境变量,修改/etc/profile。命令:vi /etc/profile,在末尾添加如下内容:
TOMCAT_HOME='/usr/local/tomcat8' #根据实际目录调整
PATH=$PATH:$TOMCAT_HOME/bin
export TOMCAT_HOME PATH
5.使环境变量生效。命令:source /etc/profile
6.检测是否配置成功。命令:echo $TOMCAT_HOME #检查tomcat
5.修改bin目录下的配置文件,进入bin目录。命令:cd /usr/local/tomcat8/bin
修改catalina.sh文件。命令:vim catalina.sh
在大约96行处添加:JAVA_OPTS="-server -Xms800m -Xmx800m -XX:MaxNewSize=256m -Djava.awt.headless=true"(注:tomcat8.0中已经不支持PermSize、MaxPermSize的配置)
修改完后保存退出。
6.启动tomcat服务器,进入tomcat的bin目录,输入启动命令:./startup.sh。出现以下界面,启动成功!
7.关闭tomcat服务器,进入tomcat的bin目录,输入关闭命令:./shutdown.sh
常见问题:
1.启动tomcat时报错:-bash: ./startup.sh: Permission denied
解决办法:在bin目录下,输入命令:chmod 755 *.sh,修改sh文件属性,提升权限
2.启动tomcat时报错:touch: cannot touch `/usr/local/tomcat8/logs/catalina.out': No such file or directory
/usr/local/tomcat8/bin/catalina.sh: line 401: /usr/local/tomcat8/logs/catalina.out: No such file or directory
解决办法:在tomcat8目录下,创建logs目录。命令:mkdir -p /usr/local/tomcat8/logs
3.启动tomcat时,端口被占用。
解决方法:首先查看端口被占用情况。命令:lsof -i:8080;再根据查询出的PID继续查找:ps axu|grep 10378;
修改tomcat端口,编辑tomcat8/conf文件夹下的server.xml文件。命令:vim server.xml
将<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />节点元素中的port修改为其他可用端口即可。
4.通过其他机器访问不到,服务器端口未开放。
解决办法:/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
service iptables save
service iptables restart
四、部署war包
1.将war包上传到服务器,拷贝到webapps目录下。命令:mv xxx.war /usr/local/tomcat8/webapps/
2.访问http://localhost:8080/xxx/
linux环境下部署tomcat的更多相关文章
- Linux环境下在Tomcat上部署JavaWeb工程
本文讲解如何将我们已经编译好的JavaWeb工程在Linux环境下的Tomcat上进行部署,总体上的思路是和Windows下JavaWeb项目部署到tomcat差不多,具体步骤和命令如下. 注:部署之 ...
- JavaWeb入门——在Linux环境下安装Tomcat服务器
JavaWeb入门——在Linux环境下安装Tomcat服务器 摘要:本文主要学习了如何在Linux环境下安装Tomcat服务器. 准备工作 检查Java环境变量 检查系统是否配置了Java的环境变量 ...
- Linux环境下部署完JDK后运行一个简单的Java程序
前言 前一篇文章详细讲解了如何在Windows环境下安装虚拟机+Linux系统,并且成功部署了JDK. 不过部署完JDK之后,我们判断部署是否成功的依据是看"java -version&qu ...
- window 和 linux 环境下杀死tomcat进程——也可以解决其他端口被占用的问题
1.应用场景 在Windows或者linux操作系统中,我们在启动一个tomcat服务器时,经常会发现8080端口已经被占用的错误,而我们又不知道如何停止这个tomcat服务器. 2.window环境 ...
- Windows环境下部署Tomcat服务器图文教程
Tomcat是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选. 本文将详细介绍在Windows环境下 ...
- Django Linux环境下部署CentOS7+Python3+Django+uWSGI+Nginx(含Nginx返回400问题处理、防火墙管理)
本文将介绍如何在Linux系统上部署Django web项目,本次部署基于下面的架构: CentOS7+ Python3.5 + Django1.11 + uWSGI + Nginx 亲测可行!!按照 ...
- linux 环境下部署 Asp.Net Core 项目 访问 oralce 数据库
1.ASP.NET Core 是一个跨平台的高性能开源框架,可以部署到Linux上,那项目部署在Linux上有哪些好处呢? 1.linux硬件需求小,大部分版本免费,成本低. 2.linux的用户管理 ...
- Linux系统下部署Tomcat服务器
详细步骤如下: 1.下载xshell5和xftp5并安装,登录连接服务器,新建会话窗口: 2.安装配置JDK1.8,具体操作方法如下: (1)下载JDK地址:http://www.oracle.com ...
- Linux环境下搭建Tomcat+mysql+jdk
Linux环境 1.下载并安装一个VMware workstation, 这个是虚拟机的平台(自行度娘下载~),虚拟机是在后面要在里面搭建Linux系统. 2.下载一个centos安装包,linux版 ...
随机推荐
- javascript [object,Object]
今天给html标签的属性赋值为对象时,发现取出来的值为 [object,Object],感觉有点奇怪. 代码如下: <!DOCTYPE html> <html> <hea ...
- iOS 10开发NSAssert(断言)的使用
断言(NSAssert)的使用 字数1055 阅读3270 评论3 喜欢30 NSAssert()是一个宏,用于开发阶段调试程序中的Bug,通过为NSAssert()传递条件表达式来断定是否属于Bug ...
- iOS10以及xCode8相关资料收集
兼容iOS 10 资料整理笔记 源文:http://www.jianshu.com/p/0cc7aad638d9 1.Notification(通知) 自从Notification被引入之后,苹果就不 ...
- DIOCP之编写第一个应用程序(三)
Client 设计功能如下: 1.建立与服务器连接 2.请求连接时,加密密码,采用Base64编码 3.定时发送心跳告诉服务器在线(长连接,用于接收推送信息) 4.进行相关的数据处理与交互 第一步:创 ...
- pdo 事物的处理
- CTO对话:云端融合下的移动技术创新
云端融合真的来了?快听CTO们怎么讲云端融合下,技术创新怎么破? 快听CTO箴言 云喊了很多年,对于很多普通的技术人,心中有很多疑问:云端融合到底意味着什么,对公司的技术体系有什么影响,未来又会走向 ...
- AWT布局管理器
布局管理器 容器内可以存放各种组件,而组件的位置和大小是由容器内的布局管理器来决定的.在AWT中为我们提供了以下5种布局管理器: ① FlowLayout 流式布局管理器 ② BorderLa ...
- Socket粘包问题
这两天看csdn有一些关于socket粘包,socket缓冲区设置的问题,发现自己不是很清楚,所以查资料了解记录一下: 一两个简单概念长连接与短连接:1.长连接 Client方与Server方先建立通 ...
- ConfigHelper.cs
using System.Configuration; using System.IO; /// <summary> /// 配置文件辅助类 /// </summary> pu ...
- Arcengine,C#获得FeatureClass的坐标系ISpatialReference以及所在数据集名称
1: /// <summary> 2: /// 获得坐标系统 3: /// </summary> 4: /// <param name="pFeatureCla ...