Ubuntu:基于Nginx和vsftpd搭建图片服务器
首先,此次项目正好需要对某云服务商的帮助文档进行全文抓取,涉及到对图片进行转存,需要重新搭建一个图片服务器方便管理,也避免数据丢失,经过多方案尝试,最终选择如下的方法,话不多说,开始行动。
环境说明
- 系统
Ubuntu 18.04
- 已开放 21号端口(ftp),80号端口(http)
安装Nginx
安装所需依赖库
1 | sudo apt-get update |
编译Nginx
先下载Nginx对应的最新版本(linux) 我当前的最新版本是:1.13.
1 | tar -zxvf nginx-* #解压下载下来的压缩包 |
此时Nginx就安装完成了,会使用默认的80端口启动,如果有启动,启动完成可直接通过服务器ip或者云解析的域名查看默认网页。
默认网页如图所示:
安装与配置vsftpd
1 | sudo apt-get install vsftpd #安装vsftpd |
下面方法目的在于单独为ftp建立一个用户,并建立images文件夹存储图片
1 | sudo mkdir /home/ftpuser #新建ftpuser目录作为ftp主目录 |
新建文件/etc/vsftpd.user_list,用于存放允许访问ftp的用户
1 | sudo nano /etc/vsftpd.user_list |
文本中添加ftpuser用户名
编辑vsftpd配置文件
1 | sudo nano /etc/vsftpd.conf |
作如下修改
- 去除注释
write_enable=YES
- 末尾添加
userlist_file=/etc/vsftpd.user_list
- 末尾添加
userlist_enable=YES
- 末尾添加
userlist_deny=NO
保存,退出
重启vsftpd服务
1 | sudo service vsftpd restart |
用filezilla
或其他ftp软件,并使用刚刚新建的用户名和密码访问测试是否成功。
创建存储图片的根目录
1 | sudo su |
1 | sudo nano /usr/local/nginx/conf/nginx.conf #在默认的server里再添加一个location并指定实际路径 |
插入内容为:
1 | location /images/ { |
停用与重新载入nginx
1 | /usr/local/nginx/sbin/nginx -s stop |