大数据与云计算 | 在阿里云ECS服务器安装FTP、MySQL、JDK、Nginx并搭建JSP开发环境,部署JavaWeb应用
一、实验目的
掌握JavaWeb的使用与应用部署
二、实验内容
1.完成学生信息增删查改基本功能
2.增加了新功能,如管理员登录功能
3.对页面进行了交互优化,比如输入格式控制
4.运用高并发,高可用相关技术,比如缓存,集群,分布式等。
5.其他细节优化/创新亮点等
三、实验过程
3.1 申请阿里云ECS实例https://developer.aliyun.com/adc/student,选用Ubuntu16.04系统
3.2 使用WorkBench登录实例,安装ftp
3.2.1 搭建好阿里云服务器后,因为后续的操作需要文件的传送,需要在阿里云ECS实例上搭建FTP服务,在服务器上安装vsftpd:
- apt-get update # 更新软件
- apt-get install vsftpd # 安装vsftpd
- service vsftpd status # 安装完后,查看vsftpd状态
3.2.2创建用户目录,指定用户只能访问这个目录
- mkdir /home/uftp # 创建目录
- chmod 777 /home # 赋予同组用户读写权限
3.2.3 指定ftp用户并设置密码
- useradd -m -d /home/uftp -s /bin/sh -g root uftp # 添加用户
- passwd uftp # 设置密码
3.2.4 尝试远程连接阿里云ECS的FTP。从https://filezilla-project.org下载并安装FileZilla,使用SFTP协议,填入主机地址、用户名和密码,连接
连接成功后,切换到根目录,可以看到服务器上的目录结构
执行vim /etc/vsftpd.conf,修改配置文件,在最下面加入一行,赋予写权限:
write_enable=YES
尝试上传文件到ECS服务器,上传成功,说明FTP服务运行正常,目录权限设置正确
3.3 为阿里云ECS实例安装MySQL
sudo apt-get install mysql-server mysql-client
输入上图界面,输入密码即可。安装完成后,运行mysql –version和service mysql status,出现下图界面,运行正常
要能远程连接数据库,需要开放阿里云ECS的3306端口。在实例安全组的入方向添加安全规则,授权对象为0.0.0.0/0,目的端口号3306,允许所有IP访问3306端口
配置MySQL:
vim /etc/mysql/mysql.conf.d/mysqld.cnf
修改bind=address=0.0.0.0,监听所有的IP地址
mysql -u root –p,输入密码,成功登录
释放并刷新权限:
- use mysql;
- update user set host='%' where user='root';
- flush privileges;
使用Navicat for MySQL:填写主机IP、设置的用户名和密码
从Navicat for MySQL连接成功
3.4 为阿里云ECS实例安装JDK
从https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html下载JDK
下载完成后,通过FileZilla上传到阿里云ECS
解压JDK并移动到/usr/local/java
- cd /home/uftp
- tar -zxvf jdk-8u251-linux-x64.tar.gz
- mv /home/uftp/jdk1.8.0_251 /usr/local/java
修改环境变量,运行:
vim /etc/profile
在末尾加入:
- export JAVA_HOME=/usr/local/java
- export JRE_HOME=${JAVA_HOME}/jre
- export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
- export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
- export PATH=$PATH:${JAVA_PATH}
运行source /etc/profile,让修改立即生效
运行java –version,显示版本1.8.0_251,配置完成
3.5 为阿里云ECS实例安装Nginx
sudo apt-get install nginx
浏览器输入服务器IP,显示Nginx的欢迎页
修改根目录地址:
vim /etc/nginx/sites-available/default
修改root的值为/root/www;
3.6 在Nginx中搭建JSP开发环境
在nginx服务器中使用JSP技术,需要搭建JSP开发环境
从https://tomcat.apache.org/下载tomcat 8.5.56,通过FTP上传到服务器
- tar -zxvf apache-tomcat-8.5.56.tar.gz # 解压
- mv /home/uftp/apache-tomcat-8.5.56 /usr/local/tomcat # 移动文件夹
- vim /etc/profile # 编辑环境变量
在/etc/profile加入以下内容:
- CATALINA_HOME="/usr/local/tomcat"
- export CATALINA_HOME
执行:
- source /etc/profile # 使环境变量更改生效
- cd /usr/local/tomcat/bin # 进入tomcat
- ./startup.sh # 启动tomcat
从浏览器访问http://39.108.14.196:8080/,出现下图界面,tomcat安装成功
现在需要将Nginx与tomcat进行结合。修改Nginx的配置文件目录(/etc/nginx)下建立nginx.conf文件,加入以下内容:
- server {
- listen 80;
- server_name 39.108.14.196;
- location / {
- proxy_pass http://localhost:8080;
- }
- } #将所有访问请求转发给tomcat进行处理
重新启动Nginx:service nginx restart
编写一个JSP测试文件,浏览器输入服务器IP地址,通过访问80端口,由Nginx转到Tomcat处理,并且成功返回页面
3.7 编写JavaWeb应用
数据表结构:
login表结构:
studentinfo表结构:
【代码略去】
3.8 将学生信息管理系统部署到阿里云ECS
在本地完成测试后,通过FTP上传到服务器
【演示略去】
四、实验结果
- 完成了JavaWeb应用从编译到部署到成功运行
- 实现了学生信息增删查改基本功能
- 实现了管理员登录、输入格式控制、管理员账号密码重置、管理员退出等附加功能
五、体会
通过本次实验,我对JavaWeb、MySQL、Nginx、tomcat等技术有了更深刻的理解,掌握了JavaWeb应用的开发与部署,对大数据与云计算的功能与原理有了进一步的了解。