FastDFS (三) --------- FastDFS 的 HTTP 访问


一、概述

在文件上传的时候,上传成功的信息中有提示我们可以通过某个路径去访问上传的文件,但是我们直接访问这个路径,却不可以,那么已经上传到 FastDFS 文件系统中的文件,我们如何在浏览器中访问呢 ?

FastDFS 提供了一个 Nginx 扩展模块,利用该模块,我们可以通过 Nginx 访问已经上传到FastDFS 上的文件。

二、准备工作

将 FastDFS 的 Nginx 扩展模块源代码上传到 Linux 上

在这里插入图片描述解压下载下来的 fastdfs-nginx-module-master.zip 文件

在这里插入图片描述

三、安装 Nginx 并且添加 FastDFS 模块

因为这个模块必须在 Nginx 的安装的过程中才能添加,所有我们需要重新安装一个 Nginx,为了和原来已安装的 Nginx 进行区分,我们把新安装的 Nginx 取名为 nginx_fdfs。

A、将 Nginx 的 tar 包上传到 Linux 上

在这里插入图片描述
B、解压上传的 Nginx 文件

在这里插入图片描述
C、切换至解压后的Nginx主目录,执行配置操作

cd nginx-1.14.2
./configure --prefix=/usr/local/nginx_fdfs --add-module=/home/soft/fastdfs-nginx-module-master/src

– prefix 是指定 nginx 安装路径
– add-module 指定 fastDFS 的 nginx 模块的源代码路径

在这里插入图片描述
D、编译并安装

执行 makemake install 命令

四、FastDFS 的 Nginx 访问配置

A、将 /home/soft/fastdfs-nginx-module-master/src (自己实际存放Nginx扩展模块的目录) 目录下的 mod_fastdfs.con f文件拷贝到 /etc/fdfs/ 目录下,这样才能正常启动 Nginx。

在这里插入图片描述
B、修改 mod_fastdfs.conf 配置文件

base_path=/opt/fastdfs/nginx_mod
tracker_server=192.168.160.133:22122
url_have_group_name = true
store_path0=/opt/fastdfs/storage/files

C、在 /opt/fastdfs/ 目录下创建 nginx_mod 目录

在这里插入图片描述
D、配置Nginx的配置文件

拦截请求路径中包含 /group[1-9]/M0[0-9] 的请求,用 fastdfs的Nginx 模块进行转发

location ~ /group[1-9]/M0[0-9] {	
     ngx_fastdfs_module;  
}

在这里插入图片描述

在这里插入图片描述
ngx_fastdfs_module
这个指令不是 Nginx 本身提供的,是扩展模块提供的,根据这个指令找到 FastDFS 提供的Nginx 模块配置文件,然后找到 Tracker,最终找到 Stroager

五、FastDFS 的 Nginx 访问启动与测试

启动带有 FastDFS 模块的 Nginx

在这里插入图片描述
在这里插入图片描述
重启或启动 FastDFS 服务进程

fdfs_trackerd /etc/fdfs/tracker.conf restart
fdfs_storaged /etc/fdfs/storage.conf restart

在这里插入图片描述
上传一个文件进行测试验证

在这里插入图片描述
浏览器输入红框中的地址访问

在这里插入图片描述
当遇到400错误,
检查配置/etc/fdfs/mod_fastdfs.confurl_have_group_name=true
该配置表示访问路径中是否需要带有group1,改为true表示路径中需要有group1。

fastdfs基于http协议的分布式文件系统源码,基于go和js,它具有高性能、高可靠、无中心、免维护等优点。 ### 大家担心的是这么简单的文件系统,靠不靠谱,可不可以用于生产环境?答案是肯定的,正因为简单所以高效,因为简单所以稳定。 注意:使用 - 支持curl命令上传 - 支持浏览器上传 - 支持HTTP下载 - 支持多机自动同步 - 支持断点下载 - 支持配置自动生成 - 支持小文件自动合并(减少inode占用) - 支持秒传 - 支持跨域访问 - 支持一键迁移(搬迁) - 支持异地备份(特别是小文件1M以下) - 支持并行体验 - 支持断点续传([tus](https://tus.io/)) - 支持docker部署 - 支持自监控告警 - 支持图片缩放 - 支持google认证码 - 支持自定义认证 - 支持集群文件信息查看 - 使用通用HTTP协议 - 无需专用客户端(支持wget,curl等工具) -fastdfs - 高性能 (使用leveldb作为kv库) - 高可靠(设计极其简单,使用成熟组件) - 无中心设计(所有节点都可以同时读写) # 优点 - 无依赖(单一文件) - 自动同步 - 失败自动修复 - 按天分目录方便维护 - 支持不同的场景 - 文件自动去重 - 支持目录自定义 - 支持保留原文件名 - 支持自动生成唯一文件名 - 支持浏览器上传 - 支持查看集群文件信息 - 支持集群监控邮件告警 - 支持小文件自动合并(减少inode占用) - 支持秒传 - 支持图片缩放 - 支持google认证码 - 支持自定义认证 - 支持跨域访问 - 极低资源开销 - 支持断点续传([tus](https://tus.io/)) - 支持docker部署 - 支持一键迁移(从其他系统文件系统迁移过来) - 支持异地备份(特别是小文件) - 支持并行体验(与现有的文件系统并行体验,确认OK再一键迁移) - 支持token下载 token=md5(file_md5+timestamp) - 运维简单,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

在森林中麋了鹿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值