码迷,mamicode.com
首页 > 编程语言 > 详细

Java笔记---通过nginx和FileZilla部署代码到云服务器

时间:2016-03-28 00:05:38      阅读:437      评论:0      收藏:0      [点我收藏+]

标签:

一、前言

在前一篇中了解到如何利用 SecurityCRT 远程登录云主机,那么现在就到重头戏了:如何将我们的 Java Web 项目部署到云主机上呢?请往下看…

二、Nginx 的使用

简介

简单说一下:
1. Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器
2. 特点是占有内存少,并发能力强。在高连接并发的情况下,Nginx是Apache服务器不错的替代品

安装

我们使用 yum 来安装 nginx,执行命令 yum install nginx 即可。安装好后,我们来试着启动下 nginx,执行命令 service nginx start.
技术分享

测试

既然 nginx 成功安装并开启了该服务,那么我们应该来测试下能否使用正常运行呢?执行命令 * wget http://127.0.0.1 *,可以看到如下显示:
技术分享
既然使用 wget 可以连接到 http://127.0.0.1 那么我们试着在浏览器上请求该地址是什么情况?若是本地机器上安装的 nginx,则直接在浏览器上输入该地址;若是云服务器上安装的,则使用 http://云服务器公网IP。结果如下:
技术分享

通过这两项测试,就说明nginx安装配置成功,可以正常运行

部署本地代码

刚刚在浏览器端显示的是 nginx 默认的 index.html 的显示界面,和 Tomcat 默认显示情况类似。该 index.html 是在 nginx 安装目录下的 html 文件夹下的(/usr/share/nginx/html). 我们若是想将某一 html 文件部署,可以将文件放入 html 目录下,然后在浏览器端访问 http://127.0.0.1/xxx.html 即可。如下:
1. 进入 nginx 下的 html 目录:命令* cd /usr/share/nginx/html *
技术分享
2. 新建 html 页面:* vi index.htm *,内容如下
技术分享
3. 本地访问该页面:显示结果如下
技术分享

三、FTP服务

为了将代码部署到远程服务器上,我们需要安装 FTP 服务和 FileZilla。这样可以将本地 Windows 机器上的代码通过 ftp 协议传输到远程服务器。

安装 ftp

在 root 权限下,通过 yum 安装 vsftpd:执行命令 yum install vsftpd注意:是 vsftpd,不是 install ftp!
技术分享

配置

安装好后,我们还需要去修改配置文件 vsftpd.conf,将匿名登录禁用掉。执行命令 vim /etc/vsftpd/vsftpd.conf,将第11行的“anonymous_enable=YES”前面加上#号,即将匿名登录禁用。至于为什么要禁用匿名登录呢?待会儿再说,请往下看…
技术分享

检查配置

配置好后,我们来检查一下生效的配置中,是否不包含 anonymous_enable=YES,执行命令cat /etc/vsftpd/vsftpd.conf |grep ^[^#]
技术分享

启动 ftp 服务

配置好后,我们就启动 ftp 服务。执行命令:service vsftpd start
技术分享
注:为了方便,我们最好也是让 ftp 服务开机自启。执行命令:chkconfig vsftpd on

配置 ftp 账户

刚刚配置 vsftpd.conf 一步, 我们将匿名登录给禁用了。这是为什么呢?原因就是为了安全。禁用匿名登录后,我们可以来配置 FTP 账户和密码,通过配置的账户密码,连接远程服务器,再传输文件。不然,若是使用匿名登录,那么只要是知道公网 IP 的人,就可以传输文件,那多不好!

现在开始来配置 ftp 账户的用户名和密码。其命令格式如下所示:

① 设置账号的命令:useradd -d /home/username -s /sbin/nologin username 
② 设置对应的密码:passwd username

我们以下面的例子来说明一下:

# 账号为“xiaoming”,目录为/home/xiaoming,且设置不允许通过ssh登录
useradd -d /home/xiaoming -s /sbin/nologin xiaoming 
# 设置账号对应的密码为 123456
passwd xiaoming
New password:123456     # 这是在执行 passwd xiaoming 后会出现的

技术分享

修改 pam

配置好了账户密码后,我们就需要来修改 vsftpd 的 pam ,以使用户可以通过自己设置的FTP用户帐号和密码连接到云服务器。我们可以先看下 /etc/pam.d/ 目录下的内容:执行命令 ls /etc/pam.d/
技术分享

编辑:执行命令 vim /etc/pam.d/vsftpd, 其原始内容如下:
技术分享
我们将其修改为以下内容:

#%PAM-1.0 
auth required /lib64/security/pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed 
auth required /lib64/security/pam_unix.so shadow nullok 
auth required /lib64/security/pam_shells.so 
account required /lib64/security/pam_unix.so 
session required /lib64/security/pam_unix.so

修改好后,重启 ftp 服务。执行命令:service vsftpd restart
技术分享

安装 FileZilla

我们安装配置好 FTP 服务后,怎样才能将本地代码通过 FTP 协议提交到远程服务器呢?其实很简单,我们可以使用 FileZilla 来帮助我们完成这项工作。当然你也可以选择其他第三方 FTP 软件。在本地机器上下载安装好 FileZilla 后,我们尝试着使用 FileZilla 来进行文件传输。
技术分享
技术分享

测试 FileZilla 文件传输

既然准备工作已经全部完成了,那么就试试将本地的一个 test.html 文件传输到远程服务器吧。我们直接在本地站点上找到 test.html ,然后拖拽到远程站点或者右键选择传输,这样就将 test.html 传输到了 FTP 账户目录下了。
技术分享
技术分享

当然仅仅放在该目录下还是不行的,因为我们需要将其放在 /usr/share/nginx/html 的目录下,这样才能通过外网来访问我们部署的代码。使用 SecureCRT 远程登录云服务器,进入FTP用户目录下,然后使用 cp 命令将刚刚上传的文件复制到 /usr/share/nginx/html 下,在来访问就 ok 了.
技术分享

四、小结

到目前为止,我们已经尝试过在云服务器上部署代码了。虽然只是简单部署了的静态 html 文件,但是还是收获了许多。下一部分,我们开始学会如何在云服务器上部署 JavaWeb 项目。
注:nginx 的使用可不仅于此,有兴趣的可以自行学习下。

Java笔记---通过nginx和FileZilla部署代码到云服务器

标签:

原文地址:http://blog.csdn.net/gulu_gulu_jp/article/details/50993901

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!