FastDfs配置nginx扩展模块进行文件访问

跟風遠走 提交于 2020-08-11 07:47:36

FastDfs配置nginx扩展模块进行文件访问

近期琢磨了下fastdfs分布式文件系统以及相关nginx扩展模块,发现其中存在的坑还是很多,社区中各种配置,各种安装方法,个人搞了一下,还是各种问题,解决后,为方便大家,特意总结下从头到尾的流程配置;

1. 删除过往安装残留物

因大家在社区找相关文档基础前提下,肯定是趟过坑,安装过多次,特此删除下残留物,保证健康干净的环境:

find / -name nginx|xargs rm -rf
find / -name fastdfs|xargs rm -rf
find / -name fdfs|xargs rm -rf

删除完成后进行下一步;

2. 安装所需环境依赖

yum install gcc -y
yum install libevent -y
yum install libevent-devel -y

fastdfs需要c语言环境支持,并且需要相关lib库,当然后面的libfastcommon在高版本环境下已经兼容libevent,可以选择不安装libevent,个人建议还是跟着步骤安装上为好;

3. 安装fastdfs核心类库

在个人目录下创建相应临时目录用于编译,安装(根据个人情况)

cd /home/yangtuo/software/nginx

本人在自己家目录下创建了nginx文件夹,用于编译安装;
接下来下载核心fastdfs核心类库libfastdfscommon

wget https://codeload.github.com/happyfish100/libfastcommon/tar.gz/V1.0.36
mv V1.0.36 libfastcommon.tar.gz
tar -zxvf libfastcommon.tar.gz

对下载的tar包进行更名,解压,如下
在这里插入图片描述
进入对应目录下进行编译,安装

cd libfastcommon-1.0.36

在这里插入图片描述

./make.sh

在这里插入图片描述
编译通过后进行安装
在这里插入图片描述
到此,核心类库编译安装成功,进行下一步;


4. 安装编译fastdfs

同样进入到前面创建的nginx目录下

cd /home/yangtuo/software/nginx

下载fastdfs

wget https://codeload.github.com/happyfish100/fastdfs/tar.gz/V5.11

同样的操作更名解压

mv V5.11 fastdfs.tar.gz
tar -zxvf fastdfs.tar.gz

执行后的目录如下
在这里插入图片描述
相同的配方,同样进入目录下
在这里插入图片描述
编译安装



./make.sh
./make install

安装完成后会在/usr/bin下生成相应的命令,当然这些命令默认是全局的不需要配置环境变量;
在这里插入图片描述
至此,初步安装完成;
安装完成后/etc会生成fdfs文件夹,里面为相应的配置fastdfs的配置文件
在这里插入图片描述
这时候进入到 fastdfs-5.11文件夹下的conf目录
在这里插入图片描述
需要把如图所示的两个配置文件复制到/etc/fdfs中






cp http.conf mime.types /etc/fdfs

如图
在这里插入图片描述
缺少这两个配置文件的话,后续起启动fastdfs时候,会报错/etc/fdfs下找不到配置文件

安装完成后,进入下面一步修改相应配置文件

5. 修改fastdfs配置文件

fastdfs简介在这里就不赘述了,主要分为tracker和storage两部分,所以在/etc/fdfs下修改配置文件名称为:

mv storage.conf.sample storage.conf
mv tracker.conf.sample tracker.conf
mv client.conf.sample client.conf

修改client配置文件主要为方便后面测试上传文件用;
在这里插入图片描述
修改名称完成后就到了修改配置文件内容的时候了,注意注意:

vim tracker.conf

主要修改以下

base_path=/opt/fastdfs/tracker

此处修改tracker的日志启动文件路径,前提是此文件路径必须真实存在,要不然无法启动;
在这里插入图片描述
tracker的启动命令,不做赘述直接开搞
在这里插入图片描述
此种情况即为没有找到指定文件夹,需手动创建,创建完成后再运行
在这里插入图片描述
如法炮制,编辑storage.conf,需要修改的地方有三处





base_path=/opt/fastdfs/storage ##storage启动日志文件目录
store_path0=/opt/fastdfs/storage/files ##storage存储器真实存放文件的路径
tracker_server=?:22122 ##tracker追踪器的ip端口

?处填写服务器或者虚拟机ip
启动storage存储器

fdfs_storaged /etc/fdfs/storage.conf

这时候会在相应的/opt/fastdfs/storage/files目录下生成一个data的文件夹
在这里插入图片描述
data下默认有256个文件夹,分别每个文件夹下面有256个子文件夹,总计65535个文件夹,这些文件夹用于存放文件;
至此这步操作fastdfs安装完成;
此时可以查看启动是否成功



ps -ef|grep fdfs

6. 下载安装nginx以及fastdfs_nginx_module扩展模块

同样进入到临时目录nginx下

 wget http://nginx.org/download/nginx-1.14.2.tar.gz
 wget http://jaist.dl.sourceforge.net/project/fastdfs/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1.16.tar.gz

特别注意:nginx和扩展模块版本需要对应,具体的对应关系建议社区内搜索下,版本不对应的话无法正常启动nginx;
进行更名,解压操作

tar -zxvf nginx-1.14.2.tar.gz
tar -zxvf fastdfs-nginx-module_v1.16.tar.gz

解压后进入fastdfs-nginx-module/src中,将其中的
在这里插入图片描述
圈中的配置文件拷贝至/etc/fdfs中

cp mod_fastdfs.conf /etc/fdfs/

同时修改扩展模块的conf文件
在这里插入图片描述
与此同时,进入到我们刚才复制到/etc/fdfs下扩展模块的配置文件
修改如下:


base_path=/opt/fastdfs/nginx_mod ##扩展模块启动日志文件目录
tracker_server=?:22122 ##tracker追踪器ip端口
url_have_group_name = true ##使用组名搜索
store_path0=/opt/fastdfs/storage/files##实际storage中存放文件的路径,必须storage配置保持一致

进入nginx解压目录进行解压安装
在这里插入图片描述
编译命令如下

./configure --prefix=/usr/local/nginx_fastdfs --add-module=/home/yangtuo/software/nginx/fastdfs-nginx-module/src/ --error-log-path=/usr/local/nginx_fdfs/logs/error.log --pid-path=/usr/local/nginx_fdfs/logs/nginx.pid --http-log-path=/usr/local/nginx_fdfs/logs/access.log

编译参数配置指定安装目录,pid存放目录,成功失败日志目录以及扩展模块的目录;

make
make install

至此安装完成,成功会在/usr/local下出现nginx_fastdfs
的文件夹,最后只需要配置下nginx配置文件启动即可访问
进入/usr/local/nginx_fastdfs,进入conf目录修改nginx.conf
在这里插入图片描述
进入sbin目录下启动nginx
在这里插入图片描述
启动命令如下:





./nginx -c /usr/local/nginx_fastdfs/conf/nginx.conf

7. 测试文档上传以及浏览器http请求访问

前面我们在/etc/fdfs下有一个client.conf配置文件
进入对应目录,编辑此配置文件

base_path=/opt/fastdfs/client ## 客户端连接日志文件存放位置
tracker_server=121.36.0.200:22122 ## 连接到tracker的ip端口

至此修改完毕,进行上传,上传特别简单
在当前文件夹下创建一个txt文档
在这里插入图片描述
在这里插入图片描述
上传命令为:
在这里插入图片描述
这时候会在files文件夹下面data/00/00生成对应为文件:
在这里插入图片描述
后缀为big.txt的文件为fastdfs默认生成的备份文件,后缀为-m的为mata文件,记录对应文件的名称,大小,长度等等;
这时候用浏览器访问路径








http://121.36.0.200/group1/M00/00/00/wKgAl175jLGAf3KGAAAAC2Eu9d4003.txt

在这里插入图片描述
成功进行访问,哈哈!!!

后续

文章中存在疏忽点,仅为个人总结,供参考,不喜勿喷,欢迎进行交流!!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!