【Java】Linux 搭建Java环境,跑起文件上传项目

目录

一、下载 JDK 并安装

1.1 下载 JDK

1.2 解压并安装

1.3 配置环境变量

二、运行 java 项目

2.1 搭建nginx

2.2 配置nginx参数

2.3 脚本配置

2.4 启动、检测和关闭

三、项目代码


一、下载 JDK 并安装


1.1 下载 JDK

从官网下载:

https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

百度网盘下载:

https://pan.baidu.com/s/1JuMW56Gt0NBiS1dgzRbwdA   提取码:zb8y

 

1.2 解压并安装

下载完成后,使用xftp将文件上传到 /usr/local 目录中

  

使用命令解压:

# 使用命令安装到 /usr/local 目录下
rpm -ivh --prefix=/usr/local/ jdk-8u181-linux-x64.rpm

# 重命名
mv jdk1.8.0_181-amd64/ java

  

 

1.3 配置环境变量

进入系统配置文件

vim /etc/profile

在文件末尾增加配置信息

export JAVA_HOME=/usr/local/java
export CLASSPATH=.:$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME PATH CLASSPATH

加载配置信息

source /etc/profile

检测是否安装成功

java -version

  

 

二、运行 java 项目


2.1 搭建nginx

已经编写了 nginx 搭建和使用,本编不再赘述,具体请看:

CentOS7 部署 Nginx 环境,跑起一个网页

 

2.2 配置nginx参数

编辑 nginx 配置文件:

vim /usr/local/nginx/conf/nginx.conf

增加访问图片的代理配置:

location /upload/ {
    alias  /usr/local/sample_demo01/upload/;
    autoindex on; # 允许目录访问
}

注意:

1)alias 和 root 的区别: 

使用 alias方式时,location 认定为别名,实际走 alias 指向的地址

# 使用 alias
location /upload/ {
    alias  /usr/local/sample_demo01/upload/;
    autoindex on; # 允许目录访问
}

# 实际访问方式
http://www.xxx.com/upload/xxx.jpg

使用 root 方式时, location 认定为路径,即指向 root 后的地址 + location

# 使用 alias
location /upload/ {
    root /usr/local/sample_demo01/;
    autoindex on; # 允许目录访问
}

# 实际访问方式
http://www.xxx.com/upload/xxx.jpg

2)配置不当可能导致安全问题

由于开启了目录访问,若省略了最后一个斜杆“/”,则攻击者可以访问到 upload 同级的目录。需要将目录访问权限限定在指定的文件夹下。

 

2.3 脚本配置

先确定是在项目根目录下:

  

配置启动脚本:

vim start.sh
# 获取当前运行路径
CRTDIR=$(pwd)

# 判断是否有upload文件夹,没有则创建,用于存储图片
if [ ! -d "${CRTDIR}/upload" ]; then
  mkdir ${CRTDIR}/upload
fi

# 判断是否有logs文件夹,没有则创建,用于存储日志
if [ ! -d "${CRTDIR}/logs" ]; then
  mkdir ${CRTDIR}/logs
fi

# 判断logs文件夹下是否有upload.log文件,没有则创建,用于记录项目日志
if [ ! -f "${CRTDIR}/logs/upload.log" ]; then
  touch ${CRTDIR}/logs/upload.log
fi

nohup java -jar ${CRTDIR}/upload-demo.jar  > ${CRTDIR}/logs/upload.log &
tail -f ${CRTDIR}/logs/upload.log

配置关闭脚本

vim stop.sh
ps -ef | grep upload-demo.jar | grep -v grep | awk '{print $2}' | xargs kill -9

赋予权限:

chmod +711 start.sh stop.sh

 

2.4 启动、检测和关闭

2.4.1 启动:

# 启动项目
sh start.sh

启动成功

  

2.4.2 检测:

ps -ef | grep upload-demo

  

访问页面:

  

上传图片:

  

尝试访问图片:

  

 

2.4.3 关闭:

sh stop.sh

关闭成功:

  

 

三、项目代码


github仓库: 文件上传项目

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值