在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项目的更多相关文章

  1. linux 上部署tomcat的java web项目,会出现post提交request.request.getParameter()的得不到值的情况

    有时候明明在windows上非常的正常,而在linux上就不正常了,在windows上post提交request.request.getParameter()有值,而在liunx上没有值. 我开始以为 ...

  2. 在英文Win7操作系统上部署C#开发的Web系统出现乱码的解决方法

    今天,迁移机器,把一个使用C#开发的Web系统部署到一台英文版Win7操作系统上,部署好以后,系统可以登录,只是网页上出现汉字乱码. 在这台电脑上,打开Word等文本编辑器,是可以正常输入.显示中文的 ...

  3. 在Linux上部署Web项目

    You believe it or not there is a feeling, lifetime all not lost to time. 在Linux上部署Web项目 这个是普通的web项目, ...

  4. Linux上部署web服务器并发布web项目-转

    Linux上部署web服务器并发布web项目   近在学习如何在linux上搭建web服务器来发布web项目,由于本人是linux新手,所以中间入了不少坑,搞了好久才搞出点成果.以下是具体的详细步骤以 ...

  5. Dubbo入门到精通学习笔记(二):Dubbo管理控制台、使用Maven构建Dubbo的jar包、在Linux上部署Dubbo privider服务(shell脚本)、部署consumer服务

    文章目录 Dubbo管理控制台 1.Dubbo管理控制台的主要作用: 2.管理控制台主要包含: 3.管理控制台版本: 安装 Dubbo 管理控制台 使用Maven构建Dubbo服务的可执行jar包 D ...

  6. Linux上部署SVN

    Linux上部署SVN author:headsen chen  2017-10-16  16:45:04 前提:通过yum来安装,必须是centos6.5的桌面版的.否则会出现某些的安装包不全而导致 ...

  7. 在linux上部署tomcat服务

    在linux上部署tomcat 1.安装JDK 2.下载tomcat http://tomcat.apache.org/download-70.cgi 3.上传到服务器,并解压 4.上传war包或者已 ...

  8. 一、netcore跨平台之 Linux上部署netcore和webapi

    这几天闲着的时候在linux上部署了一下netcore webapi,下面就纪要一下这个过程. 中间遇到不少的坑,心里都是泪啊. 话不多说,开始干活. ------------------------ ...

  9. Linux上部署多个tomcat端口设置

    在Linux上部署多个tomcat主要是防止端口冲突的问题, tomcat服务器需配置三个端口才能启动,安装时默认启用了这三个端口,当要运行多个tomcat服务时需要修改这三个端口,不能相同.端口一: ...

随机推荐

  1. 智芯微版本的智能配变融合终端交流采集APP

    1.  交采APP基本原理 通过SPI总线周期性的召测交流采集底板的“实时数据”,对“实时数据”变换.加工.统计分析得到“分析数据”和“统计数据”后,通过MQTT总线把这些数据同步到“数据中心”供其他 ...

  2. Linux C++ 网络编程学习系列(5)——多路IO之epoll边沿触发

    多路IO之epoll边沿触发+非阻塞 源码地址:https://github.com/whuwzp/linuxc/tree/master/epoll_ET_LT_NOBLOCK_example 源码说 ...

  3. vue2.x学习笔记(十三)

    接着前面的内容:https://www.cnblogs.com/yanggb/p/12595860.html. 组件的注册 注册组件有一些规范约定与注意事项. 组件名的命名规范 在注册一个组件的时候, ...

  4. selemiun 问题总结

    1.如果打开一个网页定位一个元素时发现不能够定位某一个元素,并且定位的方法没问题,则需要看下该网页是否有frame框架 解决办法: 如果有frame框架则需要先切换到frame框架下: driver. ...

  5. 米特运输——(dfs)

    米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为主要能源的D星上,这种米特能源的运输和储 存一直是一个大问题.D星上有N个城市,我们将其顺序编号为1到N,1号城市为首都.这N个城市由N- ...

  6. 0day堆(1)堆的管理策略

    基本概念 堆块:堆区内存的基本单位 包括两个部分:块首,块身 块首:标识这个堆块自身的信息:如大小,是否被占用等 块身:分配给用户使用的数据区 堆表:一般位于堆区的起始位置,用于索引堆区所有堆块的信息 ...

  7. 转:handler.post 为什么要将thread对象post到handler中执行呢?

    转载网址:http://blog.csdn.net/fei0724/article/details/8664462在Android中使用Handler和Thread线程执行后台操作 对于线程的控制,我 ...

  8. 基于jenkins自动打包并部署Tomcat环境

    传统网站部署的流程 在运维过程中,网站部署是运维的工作之一.传统的网站部署的流程大致分为:需求分析->原型设计->开发代码->提交代码->内网部署->内网测试->确 ...

  9. centos7安装及部署zabbix监控

    一:实验环境 server.zabbix.com-------------------- 192.168.200.11 agent.zabbix.com------------------------ ...

  10. css之单位

    css之单位 角度<angle> 用于<gradient>s和某些transform功能中 deg表示以度为单位的角度.一整圈就是360deg. 例如:0deg,90deg,1 ...