美文网首页GIT
分布式图片服务器FastDFS

分布式图片服务器FastDFS

作者: butters001 | 来源:发表于2018-10-15 11:02 被阅读26次

    这里不对fastdfs进行详细介绍,只讲其安装方法

    1. FastDFS 安装
    
    1.1 安装依赖包
        (1) 解压缩libfastcommon-master.zip
        (2) 进入到libfastcommon-master的目录中
        (3) 执行 ./make.sh
        (4) 执行 sudo ./make.sh install
    1.2 安装 FastDFS
        (1) 解压缩fastdfs-master.zip
        (2) 进入到 fastdfs-master目录中
        (3) 执行 ./make.sh
        (4) 执行 sudo ./make.sh install
    1.3 配置跟踪服务器 tracker
        (1) sudo cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
        (2) 在/home/python/目录中创建目录 fastdfs/tracker      
            mkdir –p /home/python/fastdfs/tracker
        (3) 编辑/etc/fdfs/tracker.conf配置文件    
            sudo vim /etc/fdfs/tracker.conf
            修改 base_path=/home/python/fastdfs/tracker
    1.4 配置存储服务器 storage
        (1) sudo cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
        (2) 在/home/python/fastdfs/ 目录中创建目录 storage
            mkdir –p /home/python/fastdfs/storage
        (3) 编辑/etc/fdfs/storage.conf配置文件  sudo vim /etc/fdfs/storage.conf
            修改内容:
            base_path=/home/python/fastdfs/storage
            store_path0=/home/python/fastdfs/storage
            tracker_server=自己ubuntu虚拟机的ip地址:22122
    1.5 启动 tracker 和 storage
        (1) sudo service fdfs_trackerd start
        (2) sudo service fdfs_storaged start
    1.6 测试是否安装成功
        (1) sudo cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
        (2) 编辑/etc/fdfs/client.conf配置文件  sudo vim /etc/fdfs/client.conf
            修改内容:
            base_path=/home/python/fastdfs/tracker
            tracker_server=自己ubuntu虚拟机的ip地址:22122
        (3) 上传文件测试:
            fdfs_upload_file /etc/fdfs/client.conf 要上传的图片文件 
            如果返回类似group1/M00/00/00/wKg33FvD_POAA2DtAABaWh_F76Qy43.jpg的文件id则说明文件上传成功
    
    2. 安装 nginx 及 fastdfs-nginx-module web 服务器 epoll
    
    2.1 解压缩 nginx-1.8.1.tar.gz
    2.2 解压缩 fastdfs-nginx-module-master.zip
    2.3 进入nginx-1.8.1目录中
    2.4 执行
        sudo ./configure --prefix=/usr/local/nginx/ --add-module=fastdfs-nginx-module-master解压后的目录的绝对路径/src
        sudo make
        sudo make install
    2.5 sudo cp fastdfs-nginx-module-master解压后的目录中src下的mod_fastdfs.conf  /etc/fdfs/mod_fastdfs.conf
    2.6 sudo vim /etc/fdfs/mod_fastdfs.conf
        修改内容:
        connect_timeout=10
        tracker_server=自己ubuntu虚拟机的ip地址:22122
        url_have_group_name=true
        store_path0=/home/python/fastdfs/storage
    2.7 sudo cp 解压缩的fastdfs-master目录conf目录中的http.conf  /etc/fdfs/http.conf
    2.8 sudo cp 解压缩的fastdfs-master目录conf目录中的mime.types /etc/fdfs/mime.types
    2.9 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;
                    }
                }
    2.10 启动nginx
        sudo /usr/local/nginx/sbin/nginx
        # sudo /usr/local/nginx/sbin/nginx -s reload  重启服务器方法
    
    3. 使用python客户端上传测试
    
    3.1进入fdfs_client-py-master.zip所在目录
    3.2 pip install fdfs_client-py-master.zip
    
    >>> from fdfs_client.client import Fdfs_client
    >>> client = Fdfs_client('/etc/fdfs/client.conf')
    >>> ret = client.upload_by_filename('/home/ubuntu/Desktop/222.jpg')
    >>> ret
    {'Local file name': '/home/ubuntu/Desktop/222.jpg',
     'Group name': 'group1',
     'Status': 'Upload successed.',
     'Storage IP': '192.168.xxx.xxx',
     'Remote file_id': 'group1/M00/00/00/wKgggFvEAluAFuDHAABaWh_Fz6Q694.jpg',
     'Uploaded size': '22.00KB'}
    

    相关文章

      网友评论

        本文标题:分布式图片服务器FastDFS

        本文链接:https://www.haomeiwen.com/subject/ztaxzftx.html