• ubuntu18.04下nginx配合fastdfs使用的安装和配置


    前期准备

    1.安装依赖包

    #  新装的ubuntu缺少gcc编译,需要先安装这个 
    sudo apt-get  install  build-essential
    
    1.解压缩 libfastcommon-master.zip文件
    2.进入到libfastcommon-master的目录中
    3.执行 ./make.sh
    4.执行 sudo ./make.sh install
    
    
    1.解压缩 fastdfs-master.zip文件
    2.进入到fastdfs-master的目录中
    3.执行 ./make.sh
    4.执行 sudo ./make.sh install( 安装完成后在/usr/bin/目录下有fdfs_trackerd文件,后续 启动的时候 要用  )
    

    配置跟踪服务器tracker

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

    配置存储服务器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
    4.修改内容 
    base_path=/home/python/fastdfs/storage
    store_path0=/home/python/fastdfs/storage
    tracker_server=自己ubuntu虚拟机的ip地址:22122
    
    

    启动

    sudo /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
    sudo /usr/bin/fdfs_storaged /etc/fdfs/storage.conf
    

    测试是否安装成功

    1. sudo cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
    2.编辑/etc/fdfs/client.conf配置文件
          sudo   vim /etc/fdfs/client.conf
    3.修改内容
    base_path=/home/python/fastdfs/tracker
    tracker_server=自己ubuntu虚拟机的ip地址:22122
    4.上传文件测试
    /usr/bin/fdfs_upload_file /etc/fdfs/client.conf  ~/Desktop/touxiang.jpg(要上传的文件) 
    如果返回类似group1/M00/00/00/rBCwA1_SVWqAEdUkAABA5jaIBAY570.jpg的文件id说明文件上传成功 
    此时我们上传的图片 数据就  保存在之前我们创建的storage目录下的data目录下 /home/python/fastdfs/storage/data
    

    安装nginx及fastdfs-nginx-module

    1.安装nginx之前需要提前安装一些依赖包
    #openssl安装
    sudo apt-get install openssl libssl-dev
    #pcre安装
    sudo apt-get install libpcre3 libpcre3-dev
    #zlib安装
    sudo apt-get install zlib1g-dev
    
    1.解压缩 nginx-1.8.1.tat.gz
    2.解压缩 fastdfs-nginx-module-master.zip
    3.进入nginx-1.8.1目录
    4.执行
    sudo ./configure --prefix=/usr/local/nginx/ --add-module=fastdfs-nginx-module-master解压后的目录的绝对路径/src
    sudo make
    sudo  make install
    
    # 可能会出现以下错误
    cc1: all warnings being treated as errors
    objs/Makefile:440: recipe for target 'objs/src/core/ngx_murmurhash.o' failed
    make[1]: *** [objs/src/core/ngx_murmurhash.o] Error 1
    make[1]: Leaving directory '/home/mac/Desktop/FastDFS/nginx-1.8.1'
    Makefile:12: recipe for target 'install' failed
    
    # 解决办法
    进入到你ngxin解压目录下的objs目录中找到Makefile
    我自己的在: cd ~/Desktop/FastDFS/nginx-1.8.1/objs/
    sudo vim Makefile
    修改第三行CFLAGS的参数
    将 --Werror参数删除掉即可
    
    5.sudo cp ~/Desktop/FastDFS/fastdfs-nginx-module-master/mod_fastdfs.conf  /etc/fdfs/mod_fastdfs.conf
    6.sudo vim /etc/fdfs/mod_fastdfs.conf
    7.修改 内容为
    connect_timeout=10
    tracker_server=自己ubuntu虚拟机的ip地址:22122
    url_have_group_name=true
    8.sudo cp 解压缩的fastdfs-master目录下conf目录下的http.conf  /etc/fdfs/http.conf
    9.sudo cp 解压缩的fastdfs-master目录下conf目录下的mime.types  /etc/fdfs/mime.types
    10.sudo vim /usr/local/nginx/conf/nginx.conf
    添加内容为:
     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
    cd /usr/local/nginx/sbin
    sudo ./nginx
    
    # 浏览器上访问
    127.0.0.1:8888    #可以看到nginx启动成功的页面
    # 再访问我们之前上传的图片返回的一串信息,当看到图片成功显示 后说明就没有问题
    http://127.0.0.1:8888/group1/M00/00/00/rBCwA1_SfPGAEj9CAABA5jaIBAY052.jpg
    
    

    python客户端上传测试

    # 在安装个python与fdfs交互的包,直接将包放到django目录下
    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('test')
    >>> ret
    {'Group name':'group1','Status':'Upload successed.', 'Remote file_id':'group1/M00/00/00/
    	wKjzh0_xaR63RExnAAAaDqbNk5E1398.py','Uploaded size':'6.0KB','Local file name':'test'
    	, 'Storage IP':'192.168.243.133'}
    
  • 相关阅读:
    蓝桥杯-最大子阵
    蓝桥杯-四平方和问题
    蓝桥杯-生日蜡烛
    蓝桥杯-三羊献瑞
    蓝桥杯-李白喝酒
    使用SSH远程管理时本地文件被修改了
    Total Commander基本配置及使用(整理)
    Linux下自己和自己用各种方法进行文件的上传下载
    idea搭建springcloud微服务框架
    将tomcat注册成服务(windows)、linux安装svn、docker、nginx、zipkin以及rabbitMQ教程
  • 原文地址:https://www.cnblogs.com/weiweivip666/p/14118418.html
Copyright © 2020-2023  润新知