在linux上部署自己开发的web项目
在linux上部署自己开发的web项目
前言:相信有很多做开发的小伙伴和我之前一样,只会在windows环境下,利用开发工具开发运行web项目,但是却不知道怎么把开发好的项目部署到linux服务器上去,并能够外网访问,这里是我自己摸索总结的过程,包括了linux的一些常用的命令,希望能帮助到更多的人;文章中还有很多不足的地方,我会慢慢的和大家一起学习进步,慢慢的完善知识技术体系。
实验环境:虚拟机上的centos7
web项目,首先是要在linux上搭建好web服务器运行环境,需要提前下载好tomcat和jdk,我下载的是如下版本的(mysql系统自带的有):(jdk有系统自带的,但是没有配环境变量,我在这里自己安装自己的版本)
apache-tomcat-8.5.35.tar.gz
jdk-8u191-linux-x64.gz
一.配置jdk环境
虽然系统自带的有jdk,但是我要安装自己下载的jdk,所以要先把之前的jdk卸载删除之后,在安装自己的jdk,安装完成之后要配置环境变量。
1.卸载之前的环境变量
查看系统现有的jdk
java -version
检测已经安装的jdk安装包:
rpm -qa | grep java
卸载:
yum remove *openjdk*
2.安装自己的jdk
把jdk从windows上传到linux(默认会上传到当前下),但是一般都不直接在root下安装,所以把jdk拷贝一份到/usr/java/下,所以
首先在/usr/下建立一个文件夹java:
mkdir /usr/java
然后把jdk拷贝到该目录下:
cp /root/jdk-8u191-linux-x64.gz /usr/java/
切换到java目录下进行解压:
tar -xvf jdk-8u191-linux-x64.gz
解压完成之后就是配置环境变量:
编辑文件:vim /etc/profile
在文件的最后增加如下内容:
export JAVA_HOME=/usr/java/jdk1.8.0_191
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib
export JAVA_HOME PATH CLASSPATH
:wq 保持退出
然后执行命令:source /etc/profile(目的是使修改的文件生效)
最后查看jdk版本:java -version
二.安装tomcat(需要jdk环境,所以要先安装jdk)
1.上传tomcat包,拷贝到/usr/tomcat/目录下,然后解压
2.配置环境变量:
编辑文件;
编辑文件:vim /etc/profile
和刚才的合并起来如下:
export JAVA_HOME=/usr/java/jdk1.8.0_191
export CATALINA_HOME=/usr/tomcat/apache-tomcat-8.5.35
export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib:$CATALINA_HOME/lib
export JAVA_HOME PATH CLASSPATH CATALINA_HOME
保存退出。
注:
/usr/tomcat/apache-tomcat-8.5.35/conf/server.xml可以配置tomcat的端口;
/usr/tomcat/apache-tomcat-8.5.35/logs/catalina.out是tomcat的启动日志;

3.启动tomcat
进入目录:cd /usr/tomcat/apache-tomcat-8.5.35/bin
直接执行:startup.sh脚本启动,
可以查看上述的启动日志,检查有没有报错,然后在浏览器中访问tomcat,若可以访问则没有问题,如果日志没报错,但是访问不了,要检查防火墙是否关闭等,可以使用命令iptables -F,然后检查selinux是否有影响,如果有则setenforce 0,暂时关闭。
三.安装mysql
这个系统自带的有,名字叫mariadb,其实就是MySQL的免费版
1.直接安装就可以了:
yum install -y mariadb-server mariadb
2.然后启动mysql服务:
systemctl start mariadb
3.启动之后设置数据库用户和密码:
mysqladmin -u root password "密码"
4.然后就可以连接登录了:
mysql -u root -p密码
四.部署web项目
分为三个步骤;
1.项目打包
将开发好的web项目打包为war包
2.将war包上传到
/usr/tomcat/apache-tomcat-8.5.35/webapps目录下
注:只要把war包放到此目录下,tomcat会自动解压,不需要手动干涉。
3.执行mysql脚本
进入mysql,然后执行该web项目的建库建表等的脚本(我
本人是直接粘贴执行的 ^!^)。
上述做完之后就可以打开浏览器来访问了项目了,是不是很简单了。
在linux上部署自己开发的web项目的更多相关文章
- linux 上部署tomcat的java web项目,会出现post提交request.request.getParameter()的得不到值的情况
有时候明明在windows上非常的正常,而在linux上就不正常了,在windows上post提交request.request.getParameter()有值,而在liunx上没有值. 我开始以为 ...
- 在英文Win7操作系统上部署C#开发的Web系统出现乱码的解决方法
今天,迁移机器,把一个使用C#开发的Web系统部署到一台英文版Win7操作系统上,部署好以后,系统可以登录,只是网页上出现汉字乱码. 在这台电脑上,打开Word等文本编辑器,是可以正常输入.显示中文的 ...
- 在Linux上部署Web项目
You believe it or not there is a feeling, lifetime all not lost to time. 在Linux上部署Web项目 这个是普通的web项目, ...
- Linux上部署web服务器并发布web项目-转
Linux上部署web服务器并发布web项目 近在学习如何在linux上搭建web服务器来发布web项目,由于本人是linux新手,所以中间入了不少坑,搞了好久才搞出点成果.以下是具体的详细步骤以 ...
- Dubbo入门到精通学习笔记(二):Dubbo管理控制台、使用Maven构建Dubbo的jar包、在Linux上部署Dubbo privider服务(shell脚本)、部署consumer服务
文章目录 Dubbo管理控制台 1.Dubbo管理控制台的主要作用: 2.管理控制台主要包含: 3.管理控制台版本: 安装 Dubbo 管理控制台 使用Maven构建Dubbo服务的可执行jar包 D ...
- Linux上部署SVN
Linux上部署SVN author:headsen chen 2017-10-16 16:45:04 前提:通过yum来安装,必须是centos6.5的桌面版的.否则会出现某些的安装包不全而导致 ...
- 在linux上部署tomcat服务
在linux上部署tomcat 1.安装JDK 2.下载tomcat http://tomcat.apache.org/download-70.cgi 3.上传到服务器,并解压 4.上传war包或者已 ...
- 一、netcore跨平台之 Linux上部署netcore和webapi
这几天闲着的时候在linux上部署了一下netcore webapi,下面就纪要一下这个过程. 中间遇到不少的坑,心里都是泪啊. 话不多说,开始干活. ------------------------ ...
- Linux上部署多个tomcat端口设置
在Linux上部署多个tomcat主要是防止端口冲突的问题, tomcat服务器需配置三个端口才能启动,安装时默认启用了这三个端口,当要运行多个tomcat服务时需要修改这三个端口,不能相同.端口一: ...
随机推荐
- mysql的事务四个特性以及事务的四个隔离级别
一.事务四大属性 分别是原子性.一致性.隔离性.持久性. 1.原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库, ...
- 动态规划_01背包_从Dijikstra和Floyd入手,彻底理解01背包
dp一直是短板,现在从最基础的地方开始补 给定背包总容量 M ,n个商品选择,分别有价值vi,占量wi,从中取商品放入背包,令.容量和W=Σwi不超过M,令背包中的价值和V=Σvi最大 然后取法有很多 ...
- X - Skyscrapers (hard version) CodeForces - 1313C2
题目大意:n个高楼,每个楼最高为mi,要求,第i个楼左边和右边不能有同时比它高的楼.让你求最在n个楼总和最高的情况下,每个楼的高度. 题解:用单调栈来做,n个楼的高度要么是单调递减,要么是单调递增,要 ...
- Cocos2d-x在win7下的android交叉编译环境
cocos2d-x在win7下的Android交叉编译环境 2014年4月14日 cocos2d-x环境配置 前面把Visual Studio+Python开发环境配好了,但还没有讲如何在Androi ...
- position的用法(top, bottom, left, right 四个定位属性配合进行使用)
一般情况下 页面元素的定位方式是根据文档流也就是说默认的从上到下,从左到右的方式进行排列的,而将元素从文档流脱离出来显示的方式有两种,一种是 position 定位另一种是float 浮动,这里我们详 ...
- tensorflow1.0 矩阵相乘
import tensorflow as tf matrix1 = tf.constant([[3,3]]) matrix2 = tf.constant([[2],[2]]) product = tf ...
- Jmeter系列(6)- test plan测试计划详细讲解
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html 测试计划的作用 测试计划描述了Jmet ...
- sqlilabs less18-22 HTTP头的注入
less18 user-agent的注入 源码分析: check_input对name,password进行了过滤 function check_input($value) { if(!empty($ ...
- input框处理大全
1.去掉谷歌input记住账号或密码时默认出现的黄色背景: 直接用css的内阴影来覆盖黄色(代码中 white可换成其他颜色) input:-webkit-autofill { -webkit-box ...
- [http 1.1] M-POST
http://www.brainbell.com/tutors/XML/XML_Book_B/Sending_Messages_Using_M_POST.htm You can restrict me ...