linux下配置nginx使用ftp目录作为静态资源文件的目标目录

1、安装ftp服务,可以直接yum install vsftpd。

2、设置随机启动,chkconfig vsftpd on。

3、启动ftp服务,service vsftpd start。

4、配置nginx静态资源重定向。

  假设我们在自定义目录/usr/local/app/yidoo/ebs-k3c/file/存放静态资源文件,希望当访问www.domain.com/file/*的时候,请求转发到/usr/local/app/yidoo/ebs-k3c/file/,此时nginx可以如下配置:

        location /file/ {
            root   /;
	    rewrite ^/file/(.*)$ /usr/local/app/yidoo/ebs-k3c/file/$1 break;
        }

  此时访问www.domain.com/file/abc.txt就会访问/usr/local/app/yidoo/ebs-k3c/file/abc.txt并返回给客户端,如果不存在,则会404。

  参见centos下ftp服务器搭建(以及启动失败解决方法)

  参见nginx核心配置详解,原创精华笔记

  但是该方案有个缺点,难以被当做正事处理,此时可以考虑fastdfs,如果需要实现权限控制的话,可以在后端加一个web服务,参考Java配合nginx实现文件下载、显示的权限控制。对于一般场景,mongodb+nginx也可以(nginx有mongodb的模块),不过不推荐,因为如果可以直接nginx+文件系统,其性能是最佳的。