搭建Tomcat云服务器
2019独角兽企业重金招聘Python工程师标准>>>
笔者最近做了一个名叫《微言(官方版)》的APP,已上架,由于是初次发布自己的APP,很多东西还不熟悉,所以特此写下服务器部署过程,一为自己回顾,二为读者借鉴,有不当之处,还请留言探讨! 注意:此篇只针对客户端的HTTP请求,对HTTPS请求的配置请移步到:Tomcat使用HTTPS请求
《微言(官方版)》iOS源码分享--极光推送实践篇
《微言(官方版)》iOS源码分享--自定义弹框篇
《微言(官方版)》源码分享--极光推送服务器篇
《微言(官方版)》iOS源码分享--HTTPS配置篇
《微言(官方版)》iOS源码分享--网络层封装篇
一、背景说明
客户端写好后,如果是单机版的好说,但要进行数据交互的话肯定要用到服务器。笔者的服务器是用Java写的,现在后台的代码也写好了,测试阶段的话都是在本机上完成的。但APP始终是要联网服务大众的,所以在本机上测试完成后就可以将服务器部署到云端了。云服务器看似高大上,其实就是利用别人家的机器和网络资源。
二、云服务器购买
云服务器网上有很多可以选择,但本着经济实用的原则,笔者在淘宝上购买了一个香港的服务器,香港的服务器有一个好处就是不用备案,然后购买的话一定要注意看是否有独立IP(一定要有!这点很重要,后面的域名就这个有关),服务器的配置刚开始不用太高,毕竟个人开发的话暂时也用不了那么多资源,说一下笔者的配置:1G内存、80G固态硬盘、5M带宽、独立IP1个、预装CentOS7.1系统。
三、系统环境配置
1.安装git:(笔者的文件都是通过git来上传下载添加更新的)
yum install git
2.安装JDK:(这里要注意,安装的版本一定要>=1.7,因为1.6版本的JDK在使用TLSv1.2的时候会有问题)
yum install java-1.8.0-openjdk-devel.x86_64
3.安装MySQL数据库:
yum install mariadb-server mariadb
4.配置MySQL数据库:
安装完成MariaDB,首先启动MariaDB
systemctl start mariadb
设置开机启动
systemctl enable mariadb
接下来进行MariaDB的相关简单配置
mysql_secure_installation
首先是设置密码,会提示先输入密码
Enter current password for root (enter for none):<–初次运行直接回车
设置密码
Set root password? [Y/n] <– 是否设置root用户密码,输入y并回车或直接回车
New password: <– 设置root用户的密码
Re-enter new password: <– 再输入一次你设置的密码
其他配置
Remove anonymous users? [Y/n] <– 是否删除匿名用户,回车
Disallow root login remotely? [Y/n] <–是否禁止root远程登录,回车
Remove test database and access to it? [Y/n] <– 是否删除test数据库,回车
Reload privilege tables now? [Y/n] <– 是否重新加载权限表,回车
初始化MariaDB完成,接下来测试登录
mysql -u root -p
将自己的数据库数据添加进来
完成
5.安装Tomcat:
笔者装的是Tomcat7,读者可以自行去官网下载:http://tomcat.apache.org/download-70.cgi ,也可以直接克隆笔者的git库里面的tar包: git clone https://git.oschina.net/Jacedy/resources.git
解压: tar -xvf apache-tomcat-7.0.73.tar
6.一般我们会把服务器的代码打包成.war包放到tomcat里运行,打包.war文件的方法很简单,在eclipse里的工程名上右键->Export->WAR file 保存就可以了
7.修改server.xml文件(apache-tomcat-7.0.73/conf/server.xml)
vi /home/jacedy/tomcat/apache-tomcat-7.0.73/conf/server.xml
插入下面 “<Context ………… />” 的配置(根据自己的实际情况配置):
<Host name="localhost" appBase="webapps"unpackWARs="true" autoDeploy="true"><!-- SingleSignOn valve, share authentication between web applicationsDocumentation at: /docs/config/valve.html --><!--<Valve className="org.apache.catalina.authenticator.SingleSignOn" />--><!-- Access log processes all example.Documentation at: /docs/config/valve.htmlNote: The pattern used is equivalent to using pattern="common" --><Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"prefix="localhost_access_log." suffix=".txt"pattern="%h %l %u %t "%r" %s %b" /><Context path="/JackServices" docBase="/home/jacedy/tomcat/apache-tomcat-7.0.73/webapps/JackServices.war" reloadable="true"/><Context path="/JackServices/resource/img" docBase="/home/jacedy/Images" debug="0" reloadable="true" /></Host>
说明: 第一个Context是配置.war,也就是使tomcat运行我们的工程(注意在更新的时候要同时删除文件apache-tomcat-7.0.73/webapps/JackServices.war和文件夹apache-tomcat-7.0.73/webapps/JackServices,因为tomcat会自动把war包解压出来。 第二个Context是配置虚拟路径,这样配置后tomcat会自动将请求路径里的"/JackServices/resource/img"映射到"/home/jacedy/Images",我这里用来保存客户端上传的图片、文件等,具体作用可以百度tomcat虚拟路径配置。
8.修改catalina.sh文件(apache-tomcat-7.0.73/bin/catalina.sh),设置tomcat环境变量
vi /home/jacedy/tomcat/apache-tomcat-7.0.73/bin/catalina.sh
添加下面四个export的值(具体的路径根据自己的实际情况配置)
# OS specific
support. $var _must_ be set to either true or false.export TOMCAT_HOME=/home/jacedy/tomcat/apache-tomcat-7.0.73
export CATALINA_HOME=/home/jacedy/tomcat/apache-tomcat-7.0.73
export JRE_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-2.b15.el7_3.x86_64/jre
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-2.b15.el7_3.x86_64cygwin=false
darwin=false
9.开放8080端口(如果8080端口已开放,此步略过)
在CentOS 7中引入了一个更强大的防火墙——Firewall。在Firewall中开启8080端口,也就是将8080端口加入到zone(Firewall的新特性,简单讲它的作用就是定义了网络区域网络连接的可信等级)中: firewall-cmd --zone=public --add-port=8080/tcp --permanent
这样就成功的将8081端口加入了public区域中,permanent参数表示永久生效,即重启也不会失效,最后不要忘记更新防火墙规则: firewall-cmd --reload
查看public区域下所有已打开的端口,命令如下: firewall-cmd --zone=public --list-ports
10.到此系统的配置全部完成,见证奇迹的时刻到了
启动tomcat: /home/jacedy/tomcat/apache-tomcat-7.0.73/bin/startup.sh
停止tomcat: /home/jacedy/tomcat/apache-tomcat-7.0.73/bin/shutdown.sh
实时查看tomcat日志:(按 ctrl + c 退出) tail -f /home/jacedy/tomcat/apache-tomcat-7.0.73/logs/catalina.out
喜欢请点赞^_^
最后附上一些可能会用的命令:
修改root密码: passwd root
移除文件 rm -f /home/jacedy/tomcat/apache-tomcat-7.0.73/webapps/JackServices.war
移除文件夹 rm -rf /home/jacedy/tomcat/apache-tomcat-7.0.73/webapps/JackServices
拷贝目录(拷贝a目录到b目录下) cp -r /a /b
拷贝文件(拷贝文件a到b目录下) cp /a /b
查看当前绝对路径 pwd
转载于:https://my.oschina.net/rootliu/blog/885770
搭建Tomcat云服务器相关推荐
- java搭建阿里云服务器环境(java环境+mysql+tomcat)和部署 JavaWeb 项目到云服务器(十分详细)
文章有不当之处,欢迎指正,如果喜欢微信阅读,你也可以关注我的微信公众号:好好学java,获取优质学习资源. 购买一系列的东西 其实就是花钱买块区域,服务器,域名,云解析,花了好多money... 一. ...
- java搭建阿里云服务器环境(java环境+mysql+tomcat)和部署 JavaWeb 项目到云服务器
文章有不当之处,欢迎指正,如果喜欢微信阅读,你也可以关注我的微信公众号:好好学java,获取优质学习资源. 购买一系列的东西 其实就是花钱买块区域,服务器,域名,云解析,花了好多money... 一. ...
- 搭建个人云服务器ubuntu18+公网ip+免费域名绑定freenom+个人网盘chfs
搭建个人云服务器ubuntu18+公网ip+免费域名绑定freenom+个人网盘chfs 动机:网上看过一个大神用自己的服务器做备份(同时还鄙视了bdyun)正好前段时间下载 ...
- php对接AliGenie天猫精灵服务器控制智能硬件esp8266① 在阿里云购买搭建私有云服务器,配置 SSL 证书 ,做好准备工作!
本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 1. php对接AliGenie天猫精灵服务器控制智能硬件esp82 ...
- 文件服务器搭建手机,自己搭建手机云服务器
自己搭建手机云服务器 内容精选 换一换 安装传输工具在本地主机和Windows云服务器上分别安装数据传输工具,将文件上传到云服务器.例如QQ.exe.在本地主机和Windows云服务器上分别安装数据传 ...
- 服务器中搭建OA系统,oa系统搭建在云服务器上
oa系统搭建在云服务器上 内容精选 换一换 一块共享云硬盘不建议同时挂载至不同类型操作系统的云服务器上使用,不同类型的操作系统指Windows.Linux等.一块共享云硬盘同时挂载至同一种操作系统不同 ...
- Cpolar实现虚拟机内网穿透,搭建私人云服务器
Cpolar实现虚拟机内网穿透,搭建私人云服务器 一.Cpolar功能介绍 Cpolar官网 Cpolar是一个安全的内网穿透的服务,可以将内网下的本地服务器通过安全隧道暴漏给公网.允许公网用户可 ...
- 搭建阿里云服务器的步骤
搭建阿里云服务器 47.96.182.223 公网 172.16.96.77 私网 cmdsshssh root@ip地址密码 apt update 获得软件仓库中的最新列表apt upgra ...
- 采集网站服务器配置,搭建数据采集云服务器源码
搭建数据采集云服务器源码 内容精选 换一换 云速建站暂不支持自主搭建代码,您可以考虑通过添加高级代码插件实现相关功能.云速建站是一套基于SaaS模式的建站系统,使用的是云服务平台,不止是一台服务器,一 ...
最新文章
- Google开源word2vec,文本相似度计算工具
- 目标检测(Object Detection)原理与实现
- mysql集群经常无法truncate_失败的mysql cluster配置-无法顺利转换已有数据
- 《上海市数据中心建设导则(2021版)》
- java图片不动了_JDK 12又来了,我学不动了...
- 关于return的用法
- w8计算机配置要求,win8配置要求 详细介绍
- 计算机相近专业有哪些,计算机相关的专业有哪些
- android 获取控件高度_安卓开发入门教程UI控件_ProgressBar
- python统计文件字数_python统计文本文件的字数
- Asia Yokohama Regional Contest 2018 K题 - Sixth Sense(思维加贪心加二分)
- android studio 中使用lambda表达式
- ScrollView中嵌套recycleView 出现的不显示,显示不全,终极解决方案
- 三星android智能手机usb驱动程序,三星手机驱动官方下载
- 路由器不开机——维修更换MT7621AT CPU
- 51nod1770 数数字 规律
- html5css重复径向渐变,CSS3怎么实现重复径向渐变效果
- BFM:总线功能模型 zz
- c语言种子数使用方法,C语言中的srand的用法,什么是种子?
- SpringBoot-注解日志 Aop注解切入点
热门文章
- 远古VOD存在严重注入漏洞!!
- 做个天气预报的小例子
- MAC PHP7 如何disable xdebug
- html 循环_一个不被程序员认为是编程语言的语言——HTML,你怎么看?
- java getattribute为空_Java TransMeta.getAttribute方法代码示例
- java frame清除控件_java – 清除JFrame的组件并添加新组件
- relativelayout中按键不能点_CNC | M80/M800系列系统常见按键和外部存储器故障
- 信息安全技术网络安全等级保护定级指南_行业标准 |报业网络安全等级保护定级参考指南V2.0发布,明确保护对象、定级要求...
- 关于计算机软件技术基础知识,计算机软件技术基础知识要点.doc
- cad小插件文字刷_文字狗最佳排版神器 小恐龙公文排版助手Office WPS插件