安装vsftpd

注:以下指令都在root账户下操作

# apt安装vsftpd
apt-get install vsftpd #启动vsftpd
service vsftpd start #新建用户作为专门访问ftp的账户
mkdir /home/uftp
useradd -d /home/uftp -s /bin/bash uftp #将/home/uftp所有者赋为uftp
chown uftp:uftp /home/uftp #新建/etc/vsftpd.user_list,用于存放ftp用户
vim /etc/vsftpd.user_list #向里面添加`uftp`,如下面图示 #编辑vsftpd配置文件
 做如下修改:
  打开注释 write_enable=YES
  添加信息 userlist_file=/etc/vsftpd.user_list
  添加信息 userlist_enable=YES
  添加信息 userlist_deny=NO #重启vsftpd
service vsftpd resatrt

vsftpd.user_list

修改文件上传权限

在默认情况下,我们新上传的文件权限是600,这时候nginx访问就会遇到permission forbidon的问题,这时候需要修改权限

这里主要修改vsftpd.conf文件两个两个参数

# 上传档案权限 755
file_open_mode = 0755 #新建目录与文件权限755
local_unmask=022

如果需要将新建文件权限设置为755,就是用上面的参数配置即可

在Windows上测试

几个常用的指令

#linux上的目录
pwd #获取文件
get file.png #上传文件
put file.png

permission deny问题

如果报出这个问题,记得检查一下登陆的账户是否拥有/home/uftp的读、写、执行权限

搭建nginx

安装gcc编译器以及nginx依赖库等

#安装gcc
apt-get build-dep gcc
#安装pcre
apt-get install libpcre3 libpcre3-dev
#安装zlib,压缩、解压
apt-get install zlib1g-dev
#安装openssl,安装套接字层密码库
apt-get install openssl libssl-dev

下载、安装nginx

#下载最新nginx
wget http://nginx.org/download/nginx-1.13.12.tar.gz
#解压
tar -zxf nginx-1.13.12.tar.gz
#进入目录
cd nginx-1.13.12
#配置,选择/usr/local/nginx作为安装目录
./configure --prefix=/usr/local/nginx
#编译
make
#安装
make install
#启动
/usr/local/nginx/sbin/nginx
#常看进程
ps -ef|grep nginx
#其他指令,停止、重启nginx
/usr/local/nginx/sbin/nginx -s stop
/usr/local/nginx/sbin/nginx -s reload

访问nginx查看是否启动成功

配置文件

打开/usr/local/nginx/conf/nginx.conf,配置图片地址路径。将之前配置的/home/uftp这个地址作为资源路径添加进去。这样,我们就可以通过ftp对这个目录进行上传、下载,通过nginx向外提供http服务

location ~ \.(gif|jpg|jpeg|png|bmp|swf)$ {
#默认的图片路径,也是ftp上传文件存放的路径,只要后缀是以上的都会到这个路径下搜索
root /home/uftp;
}

最后,重启nginx

./nginx

测试

如图示,在/home/uftp下面的有一个xx.jpg这个图片

我们访问xx.jpg这张图片,结果如下所示

注意

被访问的文件一定要有rx权限,否则会报404错误,其实是因为这个文件没有权限读取。可以使用chmod指令修改权限

chmod 754 xx.jpg

小结

安装vsftpd可以进行ftp通信,上传、下载文件,使用nginx作为服务器,对外提供图片访问地址

ubuntu16.06+vsftpd+nginx搭建图片服务器的更多相关文章

  1. Nginx 搭建图片服务器

    Nginx 搭建图片服务器 本章内容通过Nginx 和 FTP 搭建图片服务器.在学习本章内容前,请确保您的Linux 系统已经安装了Nginx和Vsftpd. Nginx 安装:http://www ...

  2. Nginx搭建图片服务器

    Nginx搭建图片服务器 标签(空格分隔): linux,nginx Nginx常用命令 ./nginx 启动 ./nginx -s reload 重载配置文件 ./nginx -s stop|sta ...

  3. nginx 搭建图片服务器(windows 下,linux 下原理应该一样)

    作者的心声:很多知道的.用过的东西,不写下来,下次还要百度查询,浪费时间和精力,故本次写下学习笔记,方便下次查阅. 题外话:如有读者通过我这篇博客解决了工作上的难题,可以给个评论,让我一起分享你的喜悦 ...

  4. Nginx,Nginx 搭建图片服务器

    Nginx Nginx 概述 反向代理 工作流程 优点 1:保护了真实的web服务器,保证了web服务器的资源安全 2:节约了有限的IP地址资源 3:减少WEB服务器压力,提高响应速度 4:其他优点 ...

  5. ftp&nginx搭建图片服务器

    下面使用ftp+nginx搭建一个简单的服务器 ftp用于文件的传输 nginx提供http服务 nginx服务器的安装和配置可以参照之前的教程:nginx安装及其配置详细教程 下面介绍ftp服务的安 ...

  6. 二、nginx搭建图片服务器

    接上篇:Nginx安装手册 cd /usr/local/nginx/conf/ 配置图片服务器 方法一.在配置文件server{}中location /{} 修改配置: #默认请求 location ...

  7. 使用Nginx搭建图片服务器(windows)

    知识点:在windows系统中,搭建图片上传服务器 参考博客:http://blog.csdn.net/u010942834/article/details/72953441 1.进入官网下载ngin ...

  8. 【nginx】解决nginx搭建图片服务器访问图片404

    图片通过ftp服务上传到/home/ftpuser/www/images目录下后访问 http://192.168.128.128/images/xxx.jpg 还是 404 NOT FOUND ,解 ...

  9. nginx+ftp搭建图片服务器(Windows Server服务器环境下)

    几种图片服务器的对比 1.直接使用ftp服务器,访问图片路径为 ftp://账户:密码@192.168.0.106/31275-105.jpg 不采用这种方式,不安全容易暴露ftp账户信息 2.直接使 ...

随机推荐

  1. contiki源码阅读之list

    我们阅读一下contiki的源码,list.c(路径是./core/lib/list.h). #include "lib/list.h" #define NULL 0 struct ...

  2. [转]Java内存溢出详解及解决方案

    原文地址:http://blog.csdn.net/xianmiao2009/article/details/49254391 内存溢出与数据库锁表的问题,可以说是开发人员的噩梦,一般的程序异常,总是 ...

  3. 软件测试技术第一次试验之——JUnit的安装与使用

    众所周知,在一个大型的软件项目中,测试是必不可少的.传统的测试方法往往要自己编写测试函数再结合测试用例进行验证,这样会显得比较繁琐.所以我们可以使用JUnit框架进行测试. 使用junit的好处就是这 ...

  4. IntelliJ IDEA详细配置和使用教程(转)

    http://blog.csdn.net/m_m254282520/article/details/78900238 关闭Intellij IDEA自动更新 在File->Settings-&g ...

  5. 微信小程序电商实战-商品详情(上)

    先看一下今天要实现的小程序商品详情页吧!   商品详情.gif 本期我们要实现小程序商品详情页的头部标题.头部轮播.商品详情浮动按钮和商品内页布局. 一.设置头部标题 如上图所示,头部标题是商品详情 ...

  6. 部分易被忽视的css3属性

    1.-webkit-tap-highlight-color 移动端页面点击按钮时会发现按钮上会出现一块阴影,设置-webkit-tap-highlight-color:rgba(0,0,0,0);就可 ...

  7. FinFET简介

    什么是FET? FET 的全名是“场效电晶体(Field Effect Transistor,FET)”,先从大家较耳熟能详的“MOS”来说明.MOS 的全名是“金属-氧化物-半导体场效电晶体(Met ...

  8. Azure 进阶攻略 | 上云后的系统,「门禁」制度又该如何实现?

    各位办公室白领们,不妨回想一下自己每天去公司上班时的一些细节. 为避免「闲杂人等」进入工作场所,我们需要证明自己是这家公司的员工才能进入,对吧!所有员工,无论所属部门或职位,都必须先证明自己身份,例如 ...

  9. JDK、JRE、javac和JVM的关系

      .java为Java的源文件后缀,编写的代码需要写在.java文件中.     Javac编译器,用于读取Java源代码,并将其编译成字节代码.经过javac编译后形成.class,是字节码文件. ...

  10. Linux系统错误码对照表

    C Name Value Description EPERM 1 Operation not permitted ENOENT 2 No such file or directory ESRCH 3 ...