第一步:把fastDFS都上传到linux系统
第二步:安装FastDFS之前,先安装libevent工具包。
yum -y install libevent
第三步:安装libfastcommon-master工具包。
1、解压缩
2、./make.sh
3、./make.sh install
4、如果系统是32位的,把/usr/lib64/libfastcommon.so文件向/usr/lib/下复制一份;如果是64位系统,忽略此步骤
第四步:安装Tracker服务。
1、解压缩
2、./make.sh
3、./make.sh install,安装后在/usr/bin/目录下有以fdfs开头的文件都是编译出来的
第五步:安装storage服务。
1、如果是在不同的服务器安装,第四步的1~4需要重新执行。
2、配置storage服务。修改/etc/fdfs/storage.conf文件
第六步:测试服务。
1、修改配置文件/etc/fdfs/client.conf
/usr/bin/fdfs_test /etc/fdfs/client.conf upload anti-steal.jpg
第七步:搭建nginx提供http服务。
可以使用官方提供的nginx插件。要使用nginx插件需要重新编译。
fastdfs-nginx-module_v1.16.tar.gz
1、解压插件压缩包
2、修改/root/fastdfs-nginx-module/src/config文件,把其中的local去掉
3、对nginx重新config,在源代码下执行:
./configure \
--prefix=/usr/local/my/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--add-module=/usr/local/my/fastdfs-nginx-module/src
4、make
5、make install
6、把/root/fastdfs-nginx-module/src/mod_fastdfs.conf文件复制到/etc/fdfs目录下。编辑/etc/fdfs/mod_fastdfs.conf:
1.只有一个group默认配置
最简单的配置:当mod_fastdfs.conf 配置文件中只有一个group1, 且配置了 url_have_group_name = false 时,即访问地址不使用分组名称,那么只需在nginx的配置文件中增加以下配置即可:
在nginx.conf里面的server{里面添加location /M00……},添加下面的几行:
location /M00 {
root /home/ningqijun/fastdfs/data;
ngx_fastdfs_module;
}
2.多个group的配置
当配置多个组,且mod_fastdfs.conf 里面指定了url_have_group_name= true 时,配置方式:
location ~ /group([0-9])/M00 {
root /home/ningqijun/fastdfs/data;
ngx_fastdfs_module;
}
比如:在group1上的 nginx 的nginx.conf 配置是
location /group1 /M00 {
root /home/ningqijun/fastdfs/data;
ngx_fastdfs_module;
}
比如:在group2上的 nginx 的nginx.conf 配置是
location /group2 /M00 {
root /home/ningqijun/fastdfs/data;
ngx_fastdfs_module;
}
8、如果是32位系统,将libfdfsclient.so拷贝至/usr/lib下
cp /usr/lib64/libfdfsclient.so /usr/lib/ 如果是64位的忽略此步
9、启动nginx:sbin/nginx
fastdfs-nginx-module模块的作用
1、为了实现下载和方便访问文件。
2、访问源文件,由于上传一个大文件到一个组的一个stoage1服务器后,这里的同组的storage2将会进行进行通部复制,如果复制没有完成,用户访问值storage2的时候,那么这个将会没有办法完整访问的,所以fastdfs-nginx-module这个模块,将会查找一个源文件,也就是存在storage1的服务器上,可以访问storage1上的文件。