一、环境

centos6.8 x64  IP:192.168.134.128

所需软件包:

libfastcommon-1.0.7.zip,FastDFS_v5.05.tar.gz,nginx-1.7.8.tar.gz,fastdfs-nginx-module_v1.16.tar.gz,pcre-8.12.tar

网上都能找到,这里就不提供原网址了!!!

先安装好需要的依赖环境

 yum install -y apr* autoconf automake bison bzip2 bzip2* cloog-ppl compat* cpp curl curl-devel fontconfig fontconfig-devel freetype freetype* freetype-devel gcc gcc-c++ gtk+-devel gd gettext gettext-devel glibc kernel kernel-headers keyutils keyutils-libs-devel krb5-devel libcom_err-devel libpng libpng* libpng-devel libjpeg* libsepol-devel libselinux-devel libstdc++-devel libtool* libgomp libxml2 libxml2-devel libXpm* libX* libtiff libtiff* make mpfr ncurses* ntp openssl nasm nasm* openssl-devel patch pcre-devel perl php-common php-gd policycoreutils ppl telnet t1lib t1lib*  pcre gcc gcc-c++ vim unzip zip ant git

二、创建目录

mkdir -p /data/{fastdfs_storage_info,fastdfs_storage_data,fastdfs}

fastdfs                tracker 目录

fastdfs_storage_info   storage 日志目录

fastdfs_storage_data   storage 数据目录

  

三、安装libfastcommon

unzip libfastcommon-1.0.7.zip

若提示报错则执行

Yum install unzip zip -y

cd libfastcommon-1.0.7

./make.sh

./make.sh install

建立软连接

ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so

4、安装fastdfs

 

tar zxf FastDFS_v5.05.tar.gz
cd FastDFS
./make.sh
./make.sh install
修改启动配置文件
sed -i 's#/usr/local/bin/#/usr/bin/#g' /etc/init.d/fdfs_stornged
sed -i 's#/usr/local/bin/#/usr/bin/#g' /etc/init.d/fdfs_trackerd

五、配置tracker.conf

编译完成后在/etc/fdfs/目录下会生成3个模板配置文件

分别是

Cleant.conf.sample      客户端配置模板

Storage.conf.sample     存储节点配置模板

Tarckerd.conf.sample    跟踪节点配置模板

将3个模板分别复制一次

cd /etc/fdfs
cp cleant.conf.sample cleant.conf
cp storage.conf.sample storage.conf
cp tracker.conf.sample tracker.conf

1)配置tracker

vi /tracker.conf 主要修改:

base_path=/data/fastdfs //设置tracker的数据文件和日志目录

启动tracker

 /etc/fdfs/tracker.conf restart  

六、配置storage.conf

vim storage.conf
disable=false
group_name=group1  //组名,根据实际情况修改
port=23000  //storage端口号,同一个组的storage端口号必须一致
端口号相同,同组成员类数据同步,数据一致
base_path=/data/fastdfs_storage_info   //storage日志目录
store_path_count=1    //存储路径个数,需要和store_path个数匹配
store_path0=/data/fastdfs_storage_data //存储路径
tracker_server=192.168.134.128:22122

启动storage:

/etc/init.d/fdfs_storaged restart

 netstat -anpt | fdf

 

至此 fastfds 已搭建完成,可以通过内置命令进行上传,下载,删除

下面将结合nginx实现http访问以及下载

七.安装nginx模块

tar zxvf fastdfs-nginx-module_v1.16.tar.gz -c /usr/local/
tar zxvf pcre-8.12.tar -C /usr/local/src/
vim /usr/local/fastdfs-nginx-module/src/config

 去掉这一型代码中的local

编译nginx

./configure
--prefix=/usr/local/nginx  
--add-module=/usr/local/fastdfs-nginx-module/src --with-http_ssl_module
--with-pcre=/usr/local/src/pcre-8.12
make && make install 

vim /usr/local/nginx/conf/nginx.conf

在server段中添加如下内容:

location ~/M00{
                 root /data/fastdfs_storage_data/data;
                 ngx_fastdfs_module;
          }

Nginx配置完毕!!

将http.conf、mod_fastdfs.conf mime.types复制一份到/etc/fdfs/

cp 存放路径/fastdfs-5.05/conf/http.conf /etc/fdfs/
cp 存放路径/fastdfs-5.05/conf/mime.types /etc/fdfs/
cp /usr/local/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

 

编辑 mod_fastdfs.conf

vim /etc/fdfs/mod_fastdfs.conf

base_path=/data/fastdfs_storage_info //保存日志目录

tracker_server=192.168.134.128:22122 #若有多个可以写多个

storage_server_port=23000 需要和节点配置文件参数一致

group_name=group1    需要和节点配置文件参数一致

url_have_group_name=true   启动组内成员http功能

store_path_count=1 和store_path数量一致,否则会报错

store_path0=/data/fastdfs_storage_data  //存储节点路径

建立软连接

ln -s /data/fastdfs_storage_data/data /data/fastdfs_storage_data/data/M00

9、测试上传

fdfs_upload_file /etc/fdfs/client.conf  client.conf.sample

如果我们想要通过http下载或者访问

http://192.168.134.128/group1/M00/00/00/wKiGgFd1A02Aeei1AAAFtTzeg5c.sample

谢谢~

  

  

  

 

  

  

 

浅谈Fastfds+nginx结合_单机的更多相关文章

  1. 浅谈 Underscore.js 中 _.throttle 和 _.debounce 的差异

    Underscore.js是一个很精干的库,压缩后只有5.2KB.它提供了几十种函数式编程的方法,弥补了标准库的不足,大大方便了JavaScript的编程. 本文仅探讨Underscore.js的两个 ...

  2. 浅谈 Unserscore.js 中 _.throttle 和 _.debounce 的差异

    来源:http://blog.coding.net/blog/the-difference-between-throttle-and-debounce-in-underscorejs Unsersco ...

  3. 浅谈 Underscore.js 中 _.throttle 和 _.debounce 的差异[转]

    看的文章来自: https://blog.coding.net/blog/the-difference-between-throttle-and-debounce-in-underscorejs 使用 ...

  4. 浅谈Nginx负载均衡和F5的区别

    前言 笔者最近在负责某集团网站时,同时用到了Nginx与F5,如图所示,负载均衡器F5作为处理外界请求的第一道"墙",将请求分发到web服务器后,web服务器上的Nginx再进行处 ...

  5. 浅谈Nginx负载均衡与F5的区别

    前言 笔者最近在负责某集团网站时,同时用到了Nginx与F5,如图所示,负载均衡器F5作为处理外界请求的第一道“墙”,将请求分发到web服务器后,web服务器上的Nginx再进行处理,静态内容直接访问 ...

  6. 【转】浅谈Nginx负载均衡与F5的区别

    前言 笔者最近在负责某集团网站时,同时用到了Nginx与F5,如图所示,负载均衡器F5作为处理外界请求的第一道“墙”,将请求分发到web服务器后,web服务器上的Nginx再进行处理,静态内容直接访问 ...

  7. 安卓开发_浅谈ListView(SimpleAdapter数组适配器)

    安卓开发_浅谈ListView(ArrayAdapter数组适配器) 学习使用ListView组件和SimapleAdapter适配器实现一个带图标的ListView列表 总共3部分 一.MainAc ...

  8. 安卓开发_浅谈Android动画(四)

    Property动画 概念:属性动画,即通过改变对象属性的动画. 特点:属性动画真正改变了一个UI控件,包括其事件触发焦点的位置 一.重要的动画类及属性值: 1.  ValueAnimator 基本属 ...

  9. 安卓开发_浅谈ListView(自定义适配器)

    ListView作为一个实际开发中使用率非常高的视图,一般的系统自带的适配器都无法满足开发中的需求,这时候就需要开发人员来自定义适配器使得ListView能够有一个不错的显示效果 有这样一个Demo ...

随机推荐

  1. 一个只有99行代码的JS流程框架(二)

    欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 张镇圳,腾讯Web前端高级工程师,对内部系统前端建设有多年经验,喜欢钻研捣鼓各种前端组件和框架. 导语 前面写 ...

  2. IT行业能力细分

    在软件行业工作7年了,平时很懒,懒得做分享,今天特意分享一下软件行业,职业大的技术分类,同学们可根据自己职业规划补充学习知识块.

  3. ES6相关新特性介绍

    你可能已经听说过 ECMAScript 6 (简称 ES6)了.ES6 是 Javascript 的下一个版本,它有很多很棒的新特性.这些特性复杂程度各不相同,但对于简单的脚本和复杂的应用都很有用.在 ...

  4. JS 基本数据类型和引用数据类型

    本文章已收录于:   .embody { padding: 10px 10px 10px; margin: 0 -20px; border-bottom: solid 1px #ededed } .e ...

  5. __builtin_popcount(n)

    Gcc提供的内建函数__builtin_popcount(n),可以精确计算n表示成二进制时有多少个1.借助这个函数可以快速判断一个数是否是2的幂. bool isPowerOfTwo(int n) ...

  6. hdu1520 Anniversary party 简单树形DP

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1520 思路:树形DP的入门题 定义dp[root][1]表示以root为根节点的子树,且root本身参 ...

  7. Mysql存储过程使用LEAVE实现MSSQL存储过程中return语法

    DELIMITER $$ USE `qrsoft_dyj_db`$$ DROP PROCEDURE IF EXISTS `proc_withdraw_approve`$$ CREATE PROCEDU ...

  8. Java Stack源码分析

    Stack简介 Stack是栈.它的特性是:先进后出(FILO, First In Last Out).java工具包中的Stack是继承于Vector(矢量队列)的,由于Vector是通过数组实现的 ...

  9. bootstrap实例 之 响应式表格-----2017-05-15

    Bootstrap 的响应式 CSS 能够自适应于台式机.平板电脑和手机,现在就bootstrap的响应式举一个例子: 如上图所示,要实现该表格在手机等移动端上只显示代号.名称.和价格,其他以查看详情 ...

  10. 你真的用好了Python的random模块吗?

    random模块 用于生成伪随机数 源码位置: Lib/random.py(看看就好,千万别随便修改) 真正意义上的随机数(或者随机事件)在某次产生过程中是按照实验过程中表现的分布概率随机产生的,其结 ...