FastDFS的安装(分布式项目中的图片管理)

分布式项目中我们将图片存放在FastDFS中,也是用它来管理图片的,但是还需要使用Nginx的代理功能才能访问FastDFS中存放的图片(也就是说还要安装Nginx)

一、FastDfs的安装

(1)安装gcc编译器

复制代码
yum install gcc-c++ perl-devel pcre-devel openssl-devel zlib-devel wget

(2)上传FastDFS和FastDFS依赖包(压缩包资源放在了我的主页资源列表)

(3)安装FastDFS依赖

复制代码
# 解压FastDFS依赖包
tar -zxvf V1.0.43.tar.gz -C /usr/local


# 进入依赖解压包
cd /usr/local/libfastcommon-1.0.43/


# 编译依赖
./make.sh 


# 安装依赖
./make.sh install

(4)安装FastDFS

复制代码
# 解压FastDFS
cd /
tar -zxvf V6.06.tar.gz -C /usr/local


# 进入FastDFS解压包
cd /usr/local/fastdfs-6.06


# 编译FastDFS
./make.sh


# 安装FastDFS
./make.sh install


# 进入etc目录
cd /etc/fdfs/


# 复制配置文件
cp client.conf.sample client.conf
cp storage.conf.sample storage.conf
cp tracker.conf.sample tracker.conf

(5)启动tracker服务(跟踪服务)

复制代码
# 创建tracker工作目录
mkdir -p  /data/fastdfs/tracker


# 修改配置文件
vim /etc/fdfs/tracker.conf


disabled=false         #启用配置文件
port=22122           #设置tracker服务的端口号
base_path=/data/fastdfs/tracker #设置tracker服务的工作目录
http.server_port=8888      #设置http端口号


# 启动tracker服务
/etc/init.d/fdfs_trackerd start


# 检查tracker服务
netstat -lntup |grep fdfs

(6)启动storage服务(存储服务)

复制代码
# 创建storage目录
mkdir -p /data/fastdfs/base
mkdir -p /data/fastdfs/storage


# 修改配置文件
vim /etc/fdfs/storage.conf


disabled=false            #启用配置文件
group_name=group1           #组名,根据实际情况修改
port=23000              #storage的端口号
base_path=/data/fastdfs/base     #storage的日志目录
store_path_count=1          #存储路径个数
store_path0=/data/fastdfs/storage   #存储路径
tracker_server=192.168.0.99:22122  #tracker服务器路径
http.server_port=8888         #设置http端口号


# 启动storage服务
/etc/init.d/fdfs_storaged start


# 查看storage服务
netstat -lntup |grep fdfs

(7)配置客户端连接

复制代码
# 创建日志目录
mkdir -p /data/fastdfs/client


# 修改Client配置文件
vim /etc/fdfs/client.conf


connect_timeout=30
network_timeout=60
base_path=/data/fastdfs/client      # 日志路径
tracker_server=192.168.0.99:22122   # tracker服务器路径

二、FastDFS的Nginxm模块包的安装

(1)上传模块包(我的主页资源列表有)

(2)解压

复制代码
cd /
# 使用rz上传FastDFS的Nginx模块包(V1.22.tar.gz)
# 解压FastDFS的Nginx模块包
tar -zxvf V1.22.tar.gz -C /usr/local

(3)安装Nginx的依赖文件

复制代码
yum install -y gcc gcc-c++ zlib zlib-devel openssl openssl-devel pcre pcre-devel gd-devel epel-release

(4)安装Nginx(将Nginx的安装包上传上来,主页资源列表有)

复制代码
# 使用rz上传Nginx(nginx-1.19.2.tar.gz)


# 解压Nginx
tar -xzvf nginx-1.19.2.tar.gz -C /usr/local
# 进入Nginx安装路径
cd /usr/local/nginx-1.19.2/
# 建立Makefile文件,检查Linux系统环境以及相关的关键属性。
./configure --add-module=/usr/local/fastdfs-nginx-module-1.22/src/
# 编译Nginx
make
# 安装Nginx
make install

(5)拷贝配置文件

复制代码
cp /usr/local/fastdfs-6.06/conf/mime.types /etc/fdfs/
cp /usr/local/fastdfs-6.06/conf/http.conf /etc/fdfs/
cp /usr/local/fastdfs-nginx-module-1.22/src/mod_fastdfs.conf /etc/fdfs/

(6)进行FastDFS存储配置

复制代码
# 编辑配置文件
vim /etc/fdfs/mod_fastdfs.conf


#保存日志目录
base_path=/data/fastdfs/storage   
#tracker服务器的IP地址以及端口号
tracker_server=192.168.0.99:22122 
#文件url中是否有group名
url_have_group_name = true      
#存储路径
store_path0=/data/fastdfs/storage  
#设置组的个数
group_count = 1           
#然后在末尾添加分组信息,目前只有一个分组,就只写一个
[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/data/fastdfs/storage

(7)配置Nginx

复制代码
# 编辑Nginx配置文件
vim /usr/local/nginx/conf/nginx.conf


server {
  listen    81;
  server_name  localhost;
  
  location ~ /group[1-3]/M00 {
    alias /data/fastdfs/storage/data;
     ngx_fastdfs_module;
   }
}

(8)启动Nginx

复制代码
# 进入sbin目录
cd /usr/local/nginx/sbin/
# 启动服务
./nginx -c /usr/local/nginx/conf/nginx.conf
相关推荐
武昌库里写JAVA10 分钟前
Iteration in Golang – How to Loop Through Data Structures in Go
java·vue.js·spring boot·学习·课程设计
WenGyyyL1 小时前
《Android 应用开发基础教程》——第十三章:权限管理机制与运行时权限请求(以拍照/存储为例)
android·java·权限·极限编程
yy鹈鹕灌顶3 小时前
LeetCode 字符串类题目解析与 Java 实现指南(深度优化版)
java·开发语言·算法·leetcode
这里是小悦同学呀!4 小时前
python学习day2
java·python·学习
hong_zc6 小时前
RabbitMQ 工作模式(上)
分布式·rabbitmq
菠萝崽.6 小时前
RabbitMQ高级篇-MQ的可靠性
java·分布式·后端·消息队列·rabbitmq·异步编程
万叶学编程7 小时前
@RequestParam 和 @RequestBody、HttpServletrequest 与HttpServletResponse
java
zfj3217 小时前
H2数据库源码学习+debug, 数据库 sql、数据库引擎、数据库存储从此不再神秘
java·数据库·sql·学习·数据库底层原理
编程、小哥哥9 小时前
Java面试实战:从Spring Boot到分布式缓存的深度探索
java·spring boot·redis·微服务·grpc·缓存技术·面试技巧
在未来等你9 小时前
互联网大厂Java求职面试:Spring AI与大模型交互的高级模式与自定义开发
java·微服务·云原生·大模型·spring ai