• 分布式图片存储系统Fastfds和Nginx


    由于在使用Django的过程当中使用到了Nginx和Fastfds,本文记录一下过程:

    fastfds架构:

    一:安装fastdfs依赖包:

    1. 解压缩libfastcommon-master.zip
    2. 进入到libfastcommon-master的目录中
    3. 执行 ./make.sh
    4. 执行 sudo ./make.sh install

     二:安装fastfds

    1. 解压缩fastdfs-master.zip
    2. 进入到 fastdfs-master目录中
    3. 执行 ./make.sh
    4. 执行 sudo ./make.sh install

    三:配置跟踪服务器tracker(fastfds分为两块)

    1. sudo cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
    2. 在/home/python/目录中创建目录 fastdfs/tracker
    3. mkdir –p /home/python/fastdfs/tracker
    4. 编辑/etc/fdfs/tracker.conf配置文件 sudo vim /etc/fdfs/tracker.conf
    5. 修改 base_path=/home/python/fastdfs/tracker

    四:配置存储服务器storage

    1. sudo cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
    2. 在/home/python/fastdfs/ 目录中创建目录 storage
    3. mkdir –p /home/python/fastdfs/storage
    4. 编辑/etc/fdfs/storage.conf配置文件 sudo vim /etc/fdfs/storage.conf

    修改内容:

    1. base_path=/home/python/fastdfs/storage
    2. store_path0=/home/python/fastdfs/storage
    3. tracker_server=自己ubuntu虚拟机的ip地址:22122

    五:启动tracker 和 storage

    1. sudo service fdfs_trackerd start
    2. sudo service fdfs_storaged start

    测试是否安装成功

    1. sudo cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
    2. 编辑/etc/fdfs/client.conf配置文件: sudo vim /etc/fdfs/client.conf

    修改内容:

    1. base_path=/home/python/fastdfs/tracker
    2. tracker_server=自己ubuntu虚拟机的ip地址:22122

    3. 上传文件测试:

    1. fdfs_upload_file /etc/fdfs/client.conf 要上传的图片文件
    2. 如果返回类似group1/M00/00/00/rBIK6VcaP0aARXXvAAHrUgHEviQ394.jpg的文件id则说明文件上传成功

    安装nginx及fastdfs-nginx-module

    1. 解压缩 nginx-1.8.1.tar.gz
    2. 解压缩 fastdfs-nginx-module-master.zip
    3. 进入nginx-1.8.1目录中
    4. 执行
    5. sudo ./configure --prefix=/usr/local/nginx/ --add-module=fastdfs-nginx-module-master解压后的目录的绝对路径/src
    6. sudo ./make
    7. sudo ./make install
    8. sudo cp fastdfs-nginx-module-master解压后的目录中src下的mod_fastdfs.conf /etc/fdfs/mod_fastdfs.conf
    9. sudo vim /etc/fdfs/mod_fastdfs.conf

    修改内容:

    1. connect_timeout=10
    2. 172.16.0.8
    3. tracker_server=自己ubuntu虚拟机的ip地址:22122
    4. url_have_group_name=true
    5. store_path0=/home/python/fastdfs/storage
    6. sudo cp 解压缩的fastdfs-master目录中的http.conf /etc/fdfs/http.conf
    7. sudo cp 解压缩的fastdfs-master目录中的mime.types /etc/fdfs/mime.types
    8. sudo vim /usr/local/nginx/conf/nginx.conf

    在http部分中添加配置信息如下:

    server {
    listen 8888;
    server_name localhost;
    location ~/group[0-9]/ {
    ngx_fastdfs_module;
    }
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
    root html;
    }
    }
    

    启动nginx

    sudo /usr/local/nginx/sbin/nginx

  • 相关阅读:
    容器之队列的使用
    容器之栈的使用
    rapidxml的使用
    C++判断文件夹是否存在并创建文件夹
    VS2017,不能将const char *转为char *
    CSS_day01_选择器
    HTML_day02_列表
    HTML_day01基本标签
    python_day3
    python_day2
  • 原文地址:https://www.cnblogs.com/huxiaoyi/p/10134550.html
Copyright © 2020-2023  润新知