在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服务时需要修改这三个端口,不能相同.端口一: ...
随机推荐
- 手动搭建I/O网络通信框架4:AIO编程模型,聊天室终极改造
第一章:手动搭建I/O网络通信框架1:Socket和ServerSocket入门实战,实现单聊 第二章:手动搭建I/O网络通信框架2:BIO编程模型实现群聊 第三章:手动搭建I/O网络通信框架3:NI ...
- 010-字符串-C语言笔记
010-字符串-C语言笔记 学习目标 1.[掌握]二维数组的声明和初始化 2.[掌握]遍历二维数组 3.[掌握]二维数组在内存中的存储 4.[掌握]二维数组与函数 5.[掌握]字符串 一.二维数组的声 ...
- FJUT2019暑假第二次周赛题解
A 服务器维护 题目大意: 给出时间段[S,E],这段时间需要人维护服务器,给出n个小时间段[ai,bi],代表每个人会维护的时间段,每个人维护这段时间有一个花费,现在问题就是维护服务器[S,E]这段 ...
- docker 概览 (1)
Docker Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化.容器是完全使 ...
- stand up meeting 12-9
今天项目小组本已约好在今天下午四点半进行今天的daily scrum: 但是在四点半的时候,天赋和士杰同学均因组内项目会议延时,导致今天的daily scrum只能在晚上进行,但静雯同学因身体不舒服无 ...
- 不同目录有同名proto文件情况下,protoc生成.cc/.h
首先先参考一下别人的博客,看完了,看懂了,再回过头来看我下面说的情况. 链接 https://blog.csdn.net/CAir2/article/details/78201572 但是这个也就是基 ...
- [PHP][thinkphp5] 学习一:增删改查
<?php namespace app\index\controller; use think\Controller; use think\Db; class Test extends Cont ...
- 从零开始建图床 minio
图床 图床可以参考知乎这篇文章 一些小众图床有空空间免费,但不知道什么时候会挂掉.前些年用过的极简图床,现在也销声匿迹: 大厂提供的有限免费空间,七牛云10G空间,10Gb/月 流量免费:但如果使用h ...
- TensorFlow的模型保存与加载
import os os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' import tensorflow as tf #tensorboard --logdir=&qu ...
- Win7+Linux双系统,完美解决删除Linux后出现的任何问题!
首先,进入到Win7,安装MiniTool Partition Wizard Home Edition删除掉Linux分区, 点Yes 然后选中 这里选中这个,重写MBR,开机神马grub神马问题都没 ...