如何在阿里云上部署war包到tomcat服务器
一. 准备工作:xshell和xftp
首先我们得确保,xshell能够远程连接阿里云ECS,xftp能够保证windows和linux之间的文件传输(当然也可以选择FileZilla,但xftp感觉更好用一些)
如何配置xshell和xftp:
- 名称:自定义
协议和端口号:xshell默认是SSH协议,端口号是22,xftp是FTP协议,端口号是21,但是我用FTP协议连接阿里云,总是连接不上,所以把协议换成SFTP,端口号换成22,就可以连上,所以建议这种情况下,填成SFTP协议
- 登录名和密码:登录名是一般是root,密码是你自己设置的密码


注意:如果此时遇到无法登陆的问题,可能是端口引起的,无外乎两种情况,一种是你本地的防火墙,一种是阿里云的安全组规则,对于本地防火墙,新建入站规则里允许该端口通过,阿里云上也需要配置一下入方向的规则:

二. jdk的安装
tomcat依赖于java运行环境,所以安装tomcat前必须安装jdk
jdk的官网下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html
这里我用的是jdk-8u65-linux-x64.tar.gz,安装步骤如下:
1. 在本地解压jdk-8u65-linux-x64.tar.gz,用xftp上传到阿里云环境。上传路径为: /usr/local

2. 赋予jdk目录最高权限,防止权限问题的发生,在xshell中操作如下:
1) 切换到jdk所在的目录:cd /usr/local
2) 赋予jdk目录最高权限: chmod 777 -R jdk1.8.0_65 (注意:-R在这里的意思是递归的修改权限)
3. 配置jdk环境变量
1) 切换到环境变量配置文件所在的目录:cd /etc
2) 编辑配置文件profile:vim profile
3) 按键盘上的 i 键进入编辑模式,一直跳到配置文件的末尾
4) 配置jdk的环境变量,输入以下内容
export JAVA_HOME=/usr/local/jdk1.8.0_65 (这就是你的jdk的安装路径,我是放在/usr/local下的)
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
5) 按键盘上的ESC键退出编辑模式,然后输入 :wq,就保存了你刚才设置的环境变量
6) 让你设置的环境变量生效: source profile
4. 检查jdk是否安装配置成功,输入 java -version,看到如下jdk版本的截图,就说明成功了!

三. tomcat的安装
tomcat的官网下载地址:http://tomcat.apache.org/
这里我用的是apache-tomcat-6.0.37.tar.gz,安装步骤如下:
1. 在本地解压apache-tomcat-6.0.37.tar.gz,上传到阿里云环境的/url/local目录下
2. 启动tomcat
1) 切换到tomcat启动命令所在的bin目录:cd /usr/local/apache-tomcat-6.0.37/bin下
2) 执行tomcat启动命令:./startup.sh,如截图所示,表示成功了

3) 一般tomcat默认端口是8080,我们在浏览器中输入http://公网ip:8080,如果出现下图所示表示tomcat安装已经成功

四. mysql/MariaDB的安装
mysql的官网下载地址:https://www.mysql.com/downloads/
由于Centos7中已经用mysql的一个分支MariaDB取代了mysql(具体原因参见知乎),所以系统版本是Centos7就要安装MariaDB而非mysql
1. 首先,得确保你的阿里云的服务器版本,在命令行输入:lsb_release -a,我的明显是Centos7

2. 创建MariaDB.repo文件:vim /etc/yum.repos.d/MariaDB.repo,实际上是创建一个网络yum源
3. 按键盘 i 键进入编辑模式,插入以下内容:
# MariaDB -- : UTC # http://downloads.mariadb.org/mariadb/repositories/ [mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.1/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=
4. 按键盘 ESC 键退出编辑模式,输入 :wq 保存退出
5. 运行命令安装MariaDB:yum -y install MariaDB-server MariaDB-client
6. 通过systemctl start mariadb来启动MariaDB服务
附录:MariaDB启动停止常用命令 systemctl start mariadb #启动服务 systemctl enable mariadb #设置开机启动 systemctl restart mariadb #重新启动 systemctl stop mariadb.service #停止服务
7. 使用mysql -u root登录到MariaDB,默认密码是空的,如下截图表示登录成功

五. 利用Navicat连接MariaDB数据库
我在连接时出现两个问题:
1. 1130- Host xxx.xxx.xxx.xxx is not allowed to connect to this MariaDB server

这个问题按照以下步骤解决:
1) 在命令行登录MariaDB数据库,输入命令:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '您的数据库密码' WITH GRANT OPTION;
2) 再刷新一下权限:flush privileges;
2. 1045-Access denied for user 'root@xxx.xxx.xxx.xxx'(using password: NO)

这个问题是因为我们没有给数据库设置登录密码,设置一下就好了
1) 输入命令:update mysql.user set password=PASSWORD('你的密码') where user='root';
2) 再刷新一下:flush privileges;
解决了这些问题后,我们的MariaDB数据库就可以正常连接了

六. 部署war包到tomcat服务器
1. 把jdbc.properties、log4j.properties这两个文件通过xftp上传到阿里云环境,上传路径为:/url/local/apache-tomcat-6.0.37/conf
2. 把war包通过xftp上传到/url/local/apache-tomcat-6.0.37/webapps下
3. 进入tomcat启动命令所在的bin目录:cd /usr/local/apache-tomcat-6.0.37/bin
4. 启动tomcat: ./startup.sh
5. 启动后,会在/usr/local/apache-tomcat-6.0.37/webapps目录下生成一个futureloan的目录
6. 修改配置文件
1) 千万要记住,不要去/futureloan/conf下修改jdbc.properties文件的配置,一定要去tomcat的/apache-tomcat-7.0.88/conf下去修改jdbc.properties文件
2) 通过vim修改jdbc.properties配置文件,只需修改三项
- url:填你的公网ip
- username:你的MariaDB数据库登录名
- password:你的MariaDB数据库密码

3) 按ESC退出编辑模式,输入 :wq 保存退出
4)重启tomcat服务器,执行命令:
/usr/local/apache-tomcat-6.0.37/bin/shutdown.sh 关闭tomcat
/usr/local/apache-tomcat-6.0.37/bin/startup.sh 启动tomcat
七. 验证接口地址
如下所示,说明已经部署成功了。

参考文章:
如何在阿里云上部署war包到tomcat服务器的更多相关文章
- 如何在windows上部署war包到tomcat服务器
一. 什么是war包 WAR(Web Archive file)网络应用程序文件,是与平台无关的文件格式,它允许将很多文件组合成一个压缩文件.war专用在web方面,一个war包可以理解为一个web项 ...
- 在腾讯云&阿里云上部署JavaWeb项目(Tomcat+MySQL)
之前做项目都是在本地跑,最近遇到需要在在云服务器(阿里云或者腾讯云都可以,差不多)上部署Java Web项目的问题,一路上遇到了好多坑,在成功部署上去之后写一下部署的步骤与过程,一是帮助自己总结记忆, ...
- 部署war包到tomcat服务器
1.首先通过eclipse的maven install生成项目的war包 2.然后把war包解压到tomcat目录下的webapps目录下 3.然后运行tomcat下的bin目录下的startup.b ...
- 阿里云上部署了zabbix,突然无法收到报警邮件的解决办法
在阿里云上部署了zabbix,一直能正常接收到zbx发来的报警邮件(报警邮箱是163的),不知是什么原因,突然无法接收到报警邮件了. 但在服务器上手动执行echo "hello"| ...
- Springboot解决war包放到Tomcat服务器上404的特殊情况
Springboot解决war包放到Tomcat服务器上404的特殊情况 原文链接:https://www.cnblogs.com/blog5277/p/9330577.html 原文作者:博客园-- ...
- linux系统部署war包,查看tomcat日志
1.部署war包app/tomcat/bin在tomcat/bin 目录下启动 .startup.sh,在启动过程中tomcat会对war包进行解压,形成相应的项目目录 执行命令:./startup. ...
- jenkins+maven+svn构建项目,及远程部署war包到tomcat上
要使用jenkins构建项目,当然要使用jenkins了,我使用的war版本的jenkins jenkins的官网 http://jenkins-ci.org/ 点击latest下载,但是可能因为天朝 ...
- 第二章 部署war包到tomcat
以turbine为例. 一.部署 1.下载或者生成war包(从maven上下载war包,并改名字为turbine.war) 2.将turbine.war拷贝到$TOMCAT_HOME/webapps中 ...
- 持续集成之Jenkins自动部署war包到远程服务器
一.无war包链接的情况 无war包链接时,需先下载war包到本地,然后执行: ---------------------------------------------以下部分为转载-------- ...
随机推荐
- 什么是 C++ 11 原始字符串?
std::string path = "C:\\VulkanSDK";//需要转义 std::string path = R"(C:\VulkanSDK)";/ ...
- unity 人物描边锯齿
项目原来实现描边用了2个pass,一个pass cull back 渲染政策,一个cull front 渲染轮廓,但问题是锯齿特别明显 尝试了下边缘光实现描边,效果更不行,边线是断的
- python通过数据库连接池实现mysql数据库增删改查
import pymysql from DBUtils.PooledDB import PooledDB class SQLHandler(object): def __init__(self, ho ...
- win10笔记本触摸板手势大全
- 4.6 基于STM32+MC20地图显示路径功能
需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...
- 爬虫基础库之Selenium
1.简介 selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题 selenium本质是通过驱动浏览器,完全模拟浏览器的操作, ...
- ElasticSearch监控
1. elasticsearch 服务的监控与报警 http://bigbo.github.io/pages/2016/10/20/elasticsearch_monitor/ 2. How to m ...
- iOS iPhone X 适配启动图片
刚出了Xcode9正式版 迫不及待地下载 使用了 保密了这么久的iPhone X 模拟器 运行起来这个样子 上下都留白不正常 这必须匹配新的启动图才行,马上查苹果开发文档 get it!!!! 添加了 ...
- Linux Shell基础 Bash常见命令 echo命令
概述 shell中常见的命令echo. 输出命令:echo echo命令的输出内容如果没有特殊含义,则将原内容输出到屏幕:如果输出内容有特殊含义,则输出打印其含义. 命令格式如下: [root@loc ...
- [SCOI2013]火柴棍数字(背包)
题目 做饭 由于越高位越好,我们先得出能组成的最高位 \(f[i][j][k]\)表示从低到高位第\(i\)位,手里拿着\(j\)根火柴,第\(i\)位是否为\(0\)所需要的最少火柴 我们转移仅需得 ...