当前位置: 首页 > news >正文

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.confdisabled=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.confdisabled=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.confconnect_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.confserver {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

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 《晶核》服务器架构——第二篇
  • fastap之使用 contextvars 实现上下文变量
  • Ps:首选项 - 常规
  • Unity+Addressable
  • 15.CentOS7升级内核
  • Android 关于设备定屏/黑屏/冻屏/ANR那些事
  • 【北京仁爱堂】脖子歪斜,拉扯疼痛怎么办?规律的生活让痉挛性斜颈的恢复事半功倍!
  • 微信小程序登陆
  • 【精选】基于springboot个人理财APP(源码+设计+辅导)
  • MATLAB 低版本Matlab-读取LAS格式点云文件并可视化(78)
  • C++ 设计模式——迭代器模式
  • 令牌和签名详细介绍+开发使用教程
  • 聚星文社下载地址
  • 光性能 -- OSNR,BER与Q值
  • Nginx 405 not allowed
  • JAVA并发编程--1.基础概念
  • JWT究竟是什么呢?
  • laravel with 查询列表限制条数
  • mysql 数据库四种事务隔离级别
  • mysql中InnoDB引擎中页的概念
  • Python语法速览与机器学习开发环境搭建
  • STAR法则
  • Vue UI框架库开发介绍
  • XML已死 ?
  • 安卓应用性能调试和优化经验分享
  • 包装类对象
  • 人脸识别最新开发经验demo
  • 手写一个CommonJS打包工具(一)
  • 算法系列——算法入门之递归分而治之思想的实现
  • 我感觉这是史上最牛的防sql注入方法类
  • 学习JavaScript数据结构与算法 — 树
  • 大数据全解:定义、价值及挑战
  • $var=htmlencode(“‘);alert(‘2“); 的个人理解
  • ()、[]、{}、(())、[[]]等各种括号的使用
  • (20)docke容器
  • (31)对象的克隆
  • (cos^2 X)的定积分,求积分 ∫sin^2(x) dx
  • (不用互三)AI绘画:科技赋能艺术的崭新时代
  • (附源码)springboot 智能停车场系统 毕业设计065415
  • (七)glDrawArry绘制
  • (三)终结任务
  • (四)库存超卖案例实战——优化redis分布式锁
  • (四)模仿学习-完成后台管理页面查询
  • (原创)攻击方式学习之(4) - 拒绝服务(DOS/DDOS/DRDOS)
  • (转)eclipse内存溢出设置 -Xms212m -Xmx804m -XX:PermSize=250M -XX:MaxPermSize=356m
  • (转)Google的Objective-C编码规范
  • (转)visual stdio 书签功能介绍
  • (转载)OpenStack Hacker养成指南
  • .MyFile@waifu.club.wis.mkp勒索病毒数据怎么处理|数据解密恢复
  • .net core 管理用户机密
  • .net core 外观者设计模式 实现,多种支付选择
  • .netcore 如何获取系统中所有session_ASP.NET Core如何解决分布式Session一致性问题
  • .net访问oracle数据库性能问题
  • @entity 不限字节长度的类型_一文读懂Redis常见对象类型的底层数据结构
  • @SentinelResource详解