Java Web项目部署在linux服务器详细记录

Java Web项目部署在linux服务器

1.情况说明:

本Java Web项目原先部署于Windows的服务器上,上线的不久后,由于存在SQL注入漏洞,被下令整改,最后决定,从Windows服务器迁移到linux服务器上,增加安全性。

本次情况是linux服务器在远处,因此需要在windows上远程使用ssh 方式远程登录 linux 服务器,配置项目的运行环境以及部署本web系统,最后解析域名,绑定ip,使项目能上线完美运行。
为了防止以后还遇到类似情况,特此记录下来,仅供参考。
(注-由于记录是后来补写的,所有有些图片是另外做演示的时候截的。但是不影响,主要看命令和步骤。)

2.使用工具:

上传文件工具 >> WinSCP ,(百度下载)
远程登录工具 >> Putty,(百度下载)
JDK1.7安装包 + tomcat安装包 +mysql安装包 + 项目war包。(百度下载)
联网的Windows系统 + 联网的linux服务器(Centos6.9版)。

3.实操记录

1.使用putty工具远程连接linux服务器:

打开下载的putty工具,然后输入自己的linux服务器ip地址,然后出现ssh终端,输入linux服务器的用户+密码登录。
这里写图片描述

远程登录linux服务器(图是后来补加的,是ubuntu系统,但是当时操作的是centos6.9的系统):

这里写图片描述

2. 检查有没有自带java和mysql

由于需要部署web项目的运行环境,所以需要先检查本linux服务器下有没有自带着其他环境。
命令:

rpm -qa|grep java
rpm -qa|grep mysql

图:
这里写图片描述

结果显示如果有环境,那你可以删除或者是你觉得适用本项目,那么留着也行。如图,我当时是卸载了mysql的。

卸载jdk和mysql命令:

yum remove *openjdk...*
yum remove *mysql....*

反正最后确保了linux服务器上没有web项目所依赖的环境以后,我们开始安装环境。

3.安装JDK1.7(按实际项目需求而选择版本)

我在我的linux服务器的/home下新建了三个文件夹:mysql + tomcat + JDK 。

这里写图片描述

然后回到Windows系统下,下载好适用于linux版本的jdk安装包。下载地址:jdk1.8_171 版本下载
下载完成以后。

打开 WinScp 工具,进行文件跨域传输:把jdk安装包上传到linux服务器上。
如图:填入linux服务器的账号密码和ip地址。
这里写图片描述
上传jdk到linux服务器下:
这里写图片描述
上传完成以后。

去linux服务器上 》》查询上传成功:
这里写图片描述

解压命令:

tar -zxvf jdk-7u80-linux-x64.tar.gz 

JDK安装路径:/home/JDK1.7/jdk1.7.0_80

配置JDK的环境变量:
在/etc/profile文件中添加变量【对所有用户生效(永久的)】

命令:(切换到root权限哟)

su 
vim /etc/profile

然后在最后面加下面的命令(路径对应自己的):

export JAVA_HOME=/home/jdk1.7/jdk1.7.0_80 
export JRE_HOME=${JAVA_HOME}/jre  
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  
export  PATH=${JAVA_HOME}/bin:$PATH

这里写图片描述
使环境生效:

source /etc/profile

查看安装版本:

命令:Java –version
这里写图片描述
这样就安装好了jdk环境。

4.安装tomcat7.0:

同样的,先在Windows系统上,下载好tomcat的安装包以后,使用 winScp 工具上传到linux服务器的/home/tomcat7 文件夹下。然后查看是否上传了:
这里写图片描述

解压压缩包:

tar –zxvf tomcat7.0xxxx(名称根据自己的而定)

解压以后,进入bin文件夹:

cd /home/tomcat/apache-tomcat-7.0/bin
ls

查看其下所有文件。

启动tomcat命令:

./startup.sh

关闭tomcat命令:

./shutdown.sh

查看Tomcat是否以关闭命令:

ps -ef|grep java

出现如下界面就是没有关闭tomcat:
这里写图片描述

出现如下界面就表示tomcat关闭成功:
这里写图片描述

到这里就安装好了tomact环境。

5.安装mysql5.7:

同样的,先在Windows系统上,下载好mysql的安装包以后,上传mysql安装包到linux服务器的/home/mysql文件夹中。
这里写图片描述

这里注意一下:
有的linux系统安装mysql的过程中有很多麻烦,如果你失败了。那么需要彻底卸载mysql,再重新安装,卸载如下:

1.检查mysql rpm相关的包是否安装并去除:
2.将依赖包一并删除
3.再次查询是否删除干净
这里写图片描述
这里写图片描述

正确的mysql安装参考地址:
mysql5.6.15安装步骤

查看错误日志:(安装出错要学会看日志文件)
这里写图片描述

关于mysql的一些命令:
• 登录mysql:

mysql -u root –p
输入密码即可登录。

或者在终端中进入mysql的安装路径,使用

bin/mysql -u root –p
然后输入密码, 即可登录。

(登录前需要先检查mysql服务是否开启哟?)

• 启动服务:service mysqld start
• 停止服务:service mysqld stop
• 重启服务:service mysqld restart
• 重载配置:service mysqld reload

启动服务并查看状态:

命令:service mysql start

显示结果:
• Starting MySQL… [确定]

命令:service mysql status

显示结果:
• MySQL running (31724) [确定]

查看服务器进程和监听的默认端口:

命令:netstat -anpt | grep mysql

显示结果:
• tcp 0 0 :::3306 :::* LISTEN 31724/mysqld

修改mysql用户的root密码:
进入mysql中,修改密码命令:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpassword');

一些其他问题:
1.mysql报错授权问题
=查看日志出现mysql的拒绝连接问题。
解决如下:进入mysql界面下:
mysql>
grant all privileges on . to ‘root’@’localhost’ identified by ‘root’ with grant option;
关键词解释:
root’@’localhost:是用户
root:是密码

2.mysql 报错没有授权的写权限:
发现无密码条件下,没有授权的写权限
mysql> flush privileges;

好了,到这里,我们就配置好了需要的javaweb项目的运行环境。下面就开始把web项目迁移到linux服务器上。


6.上传web项目的sql数据库文件:

首先去Windows上把sql数据库文件通过winSCP上传到linux服务器上。
然后进入linux 服务器的mysql中,新建一个数据库名,设置utf-8的格式:

新建一个数据库命令:

CREATE DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

如果你忘了设置为utf-8的格式:
更改数据库的字符编码

ALTER DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

使用该数据库:

use db_name;

导入xxx.sql 文件 到 数据库中:

source /home/xxx/xxxx.sql ;

这里写图片描述
导入成功后,查看各张表是否也成功。
如图:
这里写图片描述

7.上传项目war包到linux服务器:

将需要部署的web项目使用eclipse或者myeclipse等开发工具打包成war 包 的形式。
然后通过 winscp 工具上传到 linux 服务器上的tomcat的wabapps文件夹下。
这里写图片描述

其次,需要在tomcat的conf文件夹下的server.xml中加入如下的语句:就是使tomcat运行时候指向的web项目的所在地:

<Context path="" docBase="/home/tomcat7/apache-tomcat-7.0.86/webapps/xiaotuanwei20171116" debug="0" reloadable="true" />

实际上就是指明tomcat运行的war包地址:
(适用于迁移到其他的系统时使用,不是原来项目开发的系统上。)
如图:
这里写图片描述

8.运行项目查看是否正常:

启动tomcat,明确tomcat已经启动后:

这里写图片描述

在其他或本机的浏览器上输入地址来查看是不是成功:

1.访问tomcat:
在你的Windows系统上的浏览器中输入: http://192.168.0.xxx:8080/

能打开tomcat页面则证明linux服务器的tomcat服务启动成功:
(要保证两个系统之间是能ping通的)
这里写图片描述

访问自己的web系统:
输入:http://192.168.xxx.xxx:8080/find_Academic
出现自己的项目就部署成功了。你就可以查看自己系统的功能是不是都正常的。

9.将端口改为80,实现ip即可访问项目:

如果要上线运行一个项目,只要一输入域名网址就可以访问项目,也就是实现通过访问ip地址就可以访问项目的意思。

那么就需要把tomcat的8080端口改为80端口。

正确的操作应该是:

注意:1024以下的端口需要root权限的用户才能访问,所以你的配置需要要root用户下。

  1. 确保tomcat的server.xml文件中端口为8080!注意是8080!

  2. 然后终端下输入如下命令:(不管在哪个路径下都可以)

Iptables –t nat –A PREROUTING –p tcp –dport 80 –j REDIRECT –to-port 8080

这句话就是说访问80的时候链接到8080上,这样的话,便于项目上线部署,使用域名和ip绑定以后,直接输入域名就进入了项目的界面。

最后浏览器下输入:

访问系统:http://192.168.xxx.xxx/find_Academic
如图:
这里写图片描述

到处,整个Java Web项目部署在linux服务器操作记录完成。

10.部分细节:

在tomcat的地方,有一些细节问题:
验证tomcat是否运行正常的方法:

启动tomcat:
命令:/home/tomcat7/apache-tomcat-7.0.86/bin/startup.sh

查看控制台输出信息:(项目小)
命令:tail -f logs/catalina.out

这里写图片描述

或者:
(实用)进入logs里,查看日志:(项目大)

不停的刷 cat logs/catalina.out 命令,不停刷!!!

这里写图片描述

然后日志不断更新,最后看见启动成功即可。

查看进程:
这里写图片描述

查看进程所占用的端口:
这里写图片描述

Tomcat的进程是8080,进程号是17939

查看日志地址:
这里写图片描述


猜你喜欢

转载自blog.csdn.net/itbiggod/article/details/80242675
今日推荐