• Ubuntu服务器下安装FastDFS及nginx配置访问等问题记录


    下载对应包

    下载方式一:直接使用 wget 下载,如果太慢,可以去github下载,然后上传到服务器上即可。

    wget -c "https://github.com/happyfish100/fastdfs/archive/V6.06.tar.gz" \
    -O fastdfs-6.06.tar.gz
    
    wget -c "https://github.com/happyfish100/libfastcommon/archive/V1.0.43.tar.gz" \
    -O libfastcommon-1.0.43.tar.gz
    
    wget -c "https://github.com/happyfish100/fastdfs-nginx-module/archive/V1.22.tar.gz" \
    -O fastdfs-nginx-module-1.22.tar.gz
    
    wget -c http://nginx.org/download/nginx-1.17.7.tar.gz
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    2.用git下载

    git clone https://github.com/happyfish100/libfastcommon.git --depth 1
    git clone https://github.com/happyfish100/fastdfs.git --depth 1
    git clone https://github.com/happyfish100/fastdfs-nginx-module.git --depth 1
    wget http://nginx.org/download/nginx-1.15.4.tar.gz
    
    • 1
    • 2
    • 3
    • 4

    编译环境

    CentOS

    yum install git gcc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib zlib-devel openssl-devel wget vim -y
    
    • 1

    Debian/Ubuntu

    apt-get -y install git gcc g++ make automake autoconf libtool pcre2-utils libpcre2-dev zlib1g zlib1g-dev openssl libssh-dev wget vim
    
    • 1

    磁盘目录
    说明 位置
    所有安装包 /home/software/fastdfs
    数据存储位置 /usr/local/fastdfs
    #这里我为了方便把日志什么的都放到了fastdfs

    包解压环境配置

    tar zxf libfastcommon-1.0.7.tar.gz
    然后进入解压后的目录:
    ./make.sh
    ./make.sh install
    
    tar zxf fastdfs-5.05.tar.gz
    进入文件夹后依次执行命令:
    ./make.sh
    ./make.sh install
    
    安装后文件会默认安装在 /usr/bin 中,可以通过 ls fdfs_* 进行查看。
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    在这里插入图片描述
    而配置文件在 /etc/fdfs 目录中:
    在这里插入图片描述
    ​把源码包中的所有文件到/etc/fdfs下:
    在这里插入图片描述
    使用命令全部复制:cp * /etc/fdfs/

    配置tracker服务。修改/etc/fdfs/tracker.conf文件

    修改base_path 的路径,这个是用来存放日志的

    tracker配置

    #服务器ip为 192.168.52.1
    #我建议用ftp下载下来这些文件 本地修改
    vim /etc/fdfs/tracker.conf
    #需要修改的内容如下
    port=22122  # tracker服务器端口(默认22122,一般不修改)
    base_path=/user/local/fastdfs/tracker  # 存储日志和数据的根目录
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    storage配置

    vim /etc/fdfs/storage.conf
    #需要修改的内容如下
    port=23000  # storage服务端口(默认23000,一般不修改)
    base_path=/usr/local/fastdfs/storage  # 数据和日志文件存储根目录
    store_path0=/usr/local/fastdfs/storage0  # 第一个存储目录
    tracker_server=192.168.52.1:22122  # tracker服务器IP和端口
    http.server_port=9060  # http访问文件的端口(看情况修改,和nginx中监听保持一致)
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    分别创建文件夹:
    mkdir -p /usr/local/fastdfs/tracker
    mkdir -p /usr/local/fastdfs/storage

    启动这两个:

    /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
    /usr/bin/fdfs_storaged /etc/fdfs/storage.conf
    
    • 1
    • 2

    查看:
    在这里插入图片描述

    安装client测试:
    vim /etc/fdfs/client.conf
    #需要修改的内容如下
    base_path=/usr/local/fastdfs/client
    tracker_server=192.168.52.1:22122    #tracker服务器IP和端口
    #保存后测试,返回ID表示成功 如:group1/M00/00/00/xx.tar.gz
    mkdir /usr/local/fastdfs/client
    #上传图片
    /usr/bin/fdfs_test  /etc/fdfs/client.conf upload 11.jpg
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    返回样式:
    在这里插入图片描述
    这里图片就上传成功了,里面配置的IP这里都是用的内网IP

    配置nginx模块和安装nginx来进行访问该图片

    解压缩fastdfs-nginx模块:

    tar -zxvf nginx-1.17.7.tar.gz
    tar -zxvf fastdfs-nginx-module-1.22.tar.gz
    
    • 1
    • 2

    进入fastdfs-nginx-module-1.22/src目录,编辑配置文件,将文件中路径 /usr/local换成 /usr,把其中的local去掉
    在这里插入图片描述
    进入nginx目录进行配置和安装nginx:
    Ubuntu:
    apt-get install gcc
    apt-get install libpcre3 libpcre3-dev
    apt-get install zlib1g zlib1g-dev
    Ubuntu14.04的仓库中没有发现openssl-dev,由下面openssl和libssl-dev替代
    #apt-get install openssl openssl-dev
    sudo apt-get install openssl
    sudo apt-get install libssl-dev

    ./configure \
    --prefix=/usr/local/nginx \
    --pid-path=/var/run/nginx/nginx.pid \
    --lock-path=/var/lock/nginx.lock \
    --error-log-path=/var/log/nginx/error.log \
    --http-log-path=/var/log/nginx/access.log \
    --with-http_gzip_static_module \
    --http-client-body-temp-path=/var/temp/nginx/client \
    --http-proxy-temp-path=/var/temp/nginx/proxy \
    --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
    --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
    --http-scgi-temp-path=/var/temp/nginx/scgi \
    --add-module=/home/fastdfs-nginx-module/src
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    –add-module=/home/fastdfs-nginx-module/src这里=后的要切换成自己的:在
    在这里插入图片描述
    执行完后:
    make
    make install

    把/fastdfs-nginx-module/src/mod_fastdfs.conf文件复制到/etc/fdfs目录下
    在这里插入图片描述
    打开并且修改这个文件:
    修改日志存放路径:
    修改base_parh:/usr/local/fastdfs/tmp(需要创建文件)
    修改storage地址,和之前的一样,teacker_server:IP得是公网地址
    在这里插入图片描述
    修改nginx配置

    在这里插入图片描述
    配置nginx开放的端口,并配置防火墙开放端口,打开防火墙即可进行访问,
    先访问nginx,在加测试上传图片返回的地址:
    Ubuntu开放防火墙端口:sudo ufw allow 9060
    有管理员权限可省略sudo. 1.查看端口开启状态 sudo ufw status 2.开启某个端口(以8866为例) sudo ufw allow 8866 3.开启防火墙 sudo ufw enable 4.关闭防火墙 sudo ufw disable 5.重启防火墙 sudo ufw reload 6.禁止某个端口(以8866为例) sudo ufw delete allow 8866 7.查看端口IP netstat -ltn
    在这里插入图片描述
    在这里插入图片描述
    参考连接:
    https://blog.csdn.net/weixin_45248492/article/details/126076954
    https://www.cnblogs.com/leechenxiang/p/7089778.html
    https://www.cnblogs.com/leechenxiang/p/5406548.html
    https://github.com/happyfish100/fastdfs/wiki

    ubuntu安装nginx
    https://blog.csdn.net/qq_41744950/article/details/124259698
    http://t.zoukankan.com/dongye95-p-11196118.html

    客户端出现问题可查看:
    https://blog.csdn.net/m0_52029207/article/details/124893188?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-124893188-blog-124290601.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-124893188-blog-124290601.pc_relevant_default&utm_relevant_index=2

        
            com.github.tobato
            fastdfs-client
            1.26.7
        
    
    • 1
    • 2
    • 3
    • 4
    • 5

    fdfs:
    connect-timeout: 30 #连接超时时间
    so-timeout: 3000 #读取的超时时间
    tracker-list: 公网IP:22122 #tracker服务所在的地址和端口号

    在这里插入图片描述

    soTimeout: 60 这不超时才怪呢! 把时间设置长一点 soTimeout: 3000

    在这里插入图片描述

  • 相关阅读:
    Visual Studio中vim模拟器
    webpack 解决:Cannot use import statement outside a module 的问题
    升级iOS16.0.3后Siri无法正常工作?可试下这2种解决办法
    基于AERMOD模型在大气环境影响评价中的实践
    Spring——AOP
    哈希表——算法专项刷题(五)
    python 中__init__ 作用
    rocketmq安装、启动
    计算机毕业设计Java校园疫情信息管理系统(源码+系统+mysql数据库+Lw文档)
    Git教程-Git的基本使用
  • 原文地址:https://blog.csdn.net/Mou_O/article/details/127710725