一、基础
FastDFS是纯C语言实现,只支持Linux、FreeBSD等UNIX系统。
FastDFS的两个核心概念分别是:Tracker(跟踪器)、Storage(存储节点)
二、目的
搭建图片服务器
三、安装环境
依赖:
libfastcommon-master.zip
fastdfs-master.zip
fastdfs-nginx-module-master.zip
传送门:
https://github.com/happyfish100/libfastcommon
https://github.com/happyfish100/fastdfs
https://github.com/happyfish100/fastdfs-nginx-module
云盘:
链接:https://pan.baidu.com/s/1Bct79IJ6outBP8757-EWnQ
提取码:p9df
链接:https://pan.baidu.com/s/1buKNgzuL91kwQhX2l0OvBw
提取码:0xb6
链接:https://pan.baidu.com/s/13gQ8MFtbNUpJq5m_CMjR7Q
提取码:03u5
下载好后传到云服务器如图(与nginx同一目录下):
安装libfastcommon:
解压:
cd /usr/local/
unzip libfastcommon-master.zip
切换目录:
cd libfastcommon-master
开始执行,安装:
./make.sh
./make.sh install
安装FastDFS
解压:
cd /usr/local/
unzip fastdfs-master.zip
切换目录:
cd fastdfs-master
开始执行,安装:
./make.sh
./make.sh install
成功之后查看目录:
cd /etc/fdfs/
ls
如图:
将其中结尾.sample 拷贝成.conf结尾(拷贝后就可以删除.sample结尾的文件)
cp client.conf.sample client.conf
cp storage.conf.sample storage.conf
cp tracker.conf.sample tracker.conf
安装tracker:
创建tracker工作目录:
cd /home/
mkdir dfs_tracker
如图:
配置tracker:
cd /etc/fdfs
vim tracker.conf
修改如下:
1.disabled=false #默认开启
2.port=22122 #默认端口号
3.base_path=/home/dfs_tracker #刚刚创建的目录
4.http.server_port=80 #默认端口是8080(我的是80)
保存,启动 tracker 命令如下:
service fdfs_trackerd start
此时创建的tracker目录。发现目录多了data和log两个目录。
tracker开机自启:
chmod 777 /etc/rc.d/rc.local
vim /etc/rc.d/rc.local
在配置文件最后加下最后一句话即可:
service fdfs_trackerd start
如图:
查看tracker端口监听情况:
netstat -unltp|grep fdfs
安装storage:
创建工作目录
cd /home/
mkdir dfs_storage
mkdir dfs_storage_data
修改storage.conf
vim /etc/fdfs/storage.conf
找到如下几处地方修改即可
1.disabled=false
2.group_name=group1 #组名,根据实际情况修改
3.port=23000 #设置storage的端口号,默认是23000,同一个组的storage端口号必须一致
4.base_path=/home/dfs_storage #设置storage数据文件和日志目录
5.store_path_count=1 #存储路径个数
6.base_path0=/home/dfs_storage_data #实际文件存储路径
7.tracker_server=106.12.120.191:22122 #我CentOS6.5的ip地址
8.http.server_port=80 #设置 http 端口号
如图:
启动storage
service fdfs_storaged start
同样设置开机启动
修改rc.local
vim /etc/rc.d/rc.local
添加:
service fdfs_storaged start
同样查看服务是否启动
netstat -unltp | grep fdfs
确认一下,storage是否注册到了tracker中:
/usr/bin/fdfs_monitor /etc/fdfs/storage.conf
成功截图:
修改客户端配置:
vim /etc/fdfs/client.conf
修改如下:
base_path=/home/dfs_tracker #tracker服务器文件路径
tracker_server=106.12.120.191:22122 #tracker服务器IP地址和端口号
http.tracker_server_port=80 # tracker 服务器的 http端口号,必须和tracker的设置对应起来
测试:
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /root/head.jpg
截图(测试所用图片):
成功之后会返回图片的路径:
group1/M00/00/00/name.png
查看图片是否成功:
但是还是不能通过http访问到图片。
解压fastdfs-nginx-module:
cd /usr/local/
tar -zxvf nginx-1.12.0.tar.gz
unzip fastdfs-nginx-module-master.zip
添加模块:
./configure --prefix=/usr/local/nginx --add-module=/usr/local/fastdfs-nginx-module-master/src
开始安装:
make
make install
配置storage nginx:
修改nginx.conf:
cd /usr/local/nginx/conf
vim nginx.conf
修改如下:
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
location /group1/M00 {
root /home/dfs_storage_data/data;
ngx_fastdfs_module;
}
然后进入FastDFS安装时的解压过的目录,将http.conf和mime.types拷贝到/etc/fdfs目录下:
cd /usr/local/fastdfs-master/conf/
cp http.conf /etc/fdfs/
cp mime.types /etc/fdfs/
另外还需要把fastdfs-nginx-module安装目录中src目录下mod_fastdfs.conf也拷贝到/etc/fdfs目录下:
cp /usr/local/fastdfs-nginx-module-master/src/mod_fastdfs.conf /etc/fdfs/
修改:
vim /etc/fdfs/mod_fastdfs.conf
修改如下:
base_path=/home/dfs_storage #保存日志目录
tracker_server=106.12.120.191:22122 #tracker服务器的IP地址以及端口号
storage_server_port=23000 #storage服务器的端口号
url_have_group_name = true #文件 url 中是否有 group 名
store_path0=/home/dfs_storage_data #存储路径
group_count = 1
设置group
[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/home/dfs_storage_data
启动nginx:
/usr/local/nginx/sbin/nginx
成功截图:
huas_mcfeng 发布了63 篇原创文章 · 获赞 36 · 访问量 2万+ 私信 关注参考链接:https://blog.csdn.net/qq_34301871/article/details/80060235