http://blog.csdn.net/xingjiarong/article/details/50560605

在前边我们已经配置好了FastDFS的环境,但是此时的FastDFS还不能通过http来访问,以前版本的FastDFS中都是集成了http服务器的功能,所以我看到一些比较早的博客中都是在配置的时候就考虑到了http服务器,我也按照他们的方法配置过,但是错误百出,后来发现我所使用的FastDFS_v4.06是需要单独配置apache服务器的,下面就来说一下我的配置过程。

一、环境声明

本人在Windows10 64位系统上使用VirtualBox虚拟了一台Ubuntu 14.04 LTS 64位虚拟机,在前面的博客中已经搭建好了FastDFS。FastDFS安装的版本是FastDFS_v4.06,并且采用的是单节点的安装,虚拟机采用网桥网卡方式,IP地址是211.87.226.134。以下所有的命令均是在root用户下执行。

二、安装apache以及相关的软件包

执行以下的命令安装Apache已经相关的软件,切记不能只安装apache2,否则在后边的配置中会出现一些文件找不到的情况。

apt-get install apache2
apt-get install apache2.2-bin
apt-get install apache2-utils
apt-get install apache2-mpm-prefork
apt-get install libapache2-mod-php5
apt-get install apache2-prefork-dev

三、安装配置fastdfs-apache-module

1、执行以下的命令进行下载:

wget https://fastdfs.googlecode.com/files/fastdfs-apache-module_v1.15.tar.gz

2、解压并修改Makefile文件

tar zxvf fastdfs-apache-module_v1.15.tar.gz
cd fastdfs-apache-module/src
gedit Makefile

3、修改以下变量的值,如果你的apache是默认安装的,那么就可以使用以下的目录,如果不是请按照自己的配置进行修改。

APACHE_BASE_PATH=/usr/share/apache2/
APXS=/usr/bin/apxs2
APACHECTL=/usr/bin/apachectl

4、安装

make
make install

5、配置Apache2

创建mod_fastdfs.load文件并添加一部分内容

gedit /etc/apache2/mods-available/mod_fastdfs.load

在这个文件中添加如下的内容:

LoadModule fastdfs_module /usr/lib/apache2/modules/mod_fastdfs.so
<Location /M00>
sethandler fastdfs
</Location>

执行以下命令加载mod_fastdfs.so模块

a2enmod mod_fastdfs

修改虚拟主机配置,修改相关变量值,增加alias行配置

gedit /etc/apache2/sites-enabled/000-default

在文件中添加以下内容:


DocumentRoot /opt/fdfs/data/
<Directory /opt/fdfs/data/> alias /group1/M00 /opt/fdfs/data

修改mod_fastdfs.conf配置

gedit /etc/fdfs/mod_fastdfs.conf

将以下内容根据自己的实际情况进行修改

base_path=/home/xing/fastdfs
tracker_server=211.87.226.134:22122
store_path0=/home/xing/fastdfs

重启apache使配置生效

/etc/init.d/apache2 restart

四、测试

FastDFS安装包中,自带了客户端程序,通过程序可以进行文件上传。在使用这个客户端程序之前,首先需要配置client.conf,然后再进行文件上传及下载。

修改%FastDFS%/conf/client.conf文件,修改如下: 
可自定义,但此目录必须存在,用于存放文件上传log

base_path=/home/xing/fastdfs
tracker_server=211.87.226.134.121:22122

使用以下的命令上传一个文件

fdfs_test %FastDFS%/conf/client.conf upload test.txt

上传成功后会返回下面的信息:

我们在本机的浏览器中输入:http://211.87.226.134/M00/00/00/01fihlag0FiAGaE5AAAAEv-uAfI775_big.txt来访问这个文件就会显示出如下的结果,注意这里的地址不是返回的file url,而是ip地址加上remote_filename。

文件的内容就显示出来了,这里还有中文的乱码,在之后我再设置一下。

(转)分布式文件存储FastDFS(四)配置fastdfs-apache-module的更多相关文章

  1. 分布式文件存储:FastDFS简单使用与原理分析

    引言 FastDFS 属于分布式存储范畴,分布式文件系统 FastDFS 非常适合中小型项目,在我接手维护公司图片服务的时候开始接触到它,本篇文章目的是总结一下 FastDFS 的知识点. 用了 2 ...

  2. 我心中的核心组件(可插拔的AOP)~分布式文件上传组件~基于FastDFS

    回到目录 一些概念 在大叔框架里总觉得缺点什么,在最近的项目开发中,终于知道缺什么了,分布式文件存储组件,就是缺它,呵呵,对于分布式文件存储来说,业界比较公认的是FastDFS组件,它自己本身就是集群 ...

  3. .Net平台下,分布式文件存储的实现

    遇到的问题 对于Web程序,使用一台服务器的时候,客户端上传的文件一般也都是存储在这台服务器上.但在集群环境中就行不通了,如果每个服务器都存储自己接受到的文件,就乱套了,数据库中明明有这个附件的记录, ...

  4. 【网络爬虫入门05】分布式文件存储数据库MongoDB的基本操作与爬虫应用

    [网络爬虫入门05]分布式文件存储数据库MongoDB的基本操作与爬虫应用 广东职业技术学院  欧浩源 1.引言 网络爬虫往往需要将大量的数据存储到数据库中,常用的有MySQL.MongoDB和Red ...

  5. 分布式文件存储数据库 MongoDB

    MongoDB 简介 Mongo 并非芒果(Mango)的意思,而是源于 Humongous(巨大的:庞大的)一词. MongoDB 是一个基于分布式文件存储的 NoSQL 数据库.由 C++ 语言编 ...

  6. (转)分布式文件存储FastDFS(三)FastDFS配置

    http://blog.csdn.net/xingjiarong/article/details/50559768 在上一节中我们一起搭建了一个单节点的FastDFS系统,但是仅仅将系统搭建起来是远远 ...

  7. (转) 分布式文件存储FastDFS(一)初识FastDFS

    http://blog.csdn.net/xingjiarong/article/details/50559849 一.FastDFS简介 FastDFS是一款开源的.分布式文件系统(Distribu ...

  8. 分布式文件存储FastDFS(一)初识FastDFS

    一.FastDFS简单介绍 FastDFS是一款开源的.分布式文件系统(Distributed File System),由淘宝开发平台部资深架构师余庆开发.作为一个分布式文件系统,它对文件进行管理. ...

  9. Centos7部署分布式文件存储(Fastdfs)

    目录 FastDFS介绍 楼主目标:前可H5撩妹,后可Linux搞运维 环境:Centos7 软件: 软件链接: 安装前所有准备,上传软件到Centos7上的/opt的目录下 安装依赖软件和类库(安装 ...

  10. 1Nginx+fastdfs分布式文件存储

     准备,将所需的软件传到服务器上,服务器的列表如下: fastdfs-nginx-module_v1.15.tar.gz FastDFS_v4.06.tar.gz libevent-2.0.21- ...

随机推荐

  1. WCF 配置文件中的MaxStringContentLength & MaxReceivedMessageSize

    中午测试员在测试系统模块时发现无法通过WCF从服务器下载数据,检查配置文件后,建议开发人员修改站点的WEB.CONFIG文件,具体修改对比如下: 旧的: <binding name=" ...

  2. OSX: node中安装zeromq

    1. brew install pkg-config2. brew install zmq3. export PKG_CONFIG_PATH="/usr/local/lib/pkgconfi ...

  3. Win7 如何卸载IE9

    1 控制面板,卸载程序 2 查看已安装的更新   3 右击对应更新,选择卸载.

  4. HDU 5100 Chessboard 用 k &#215; 1 的矩形覆盖 n &#215; n 的正方形棋盘

    pid=5100">点击打开链接 Chessboard Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32 ...

  5. C++简单版BitSet求解大量数据是否存在莫个数

    #include <iostream> using namespace std; template<int N> class BitSet { public: BitSet() ...

  6. 跟我一起写Makefile:概述

    什么是makefile?也许非常多Winodws的程序猿都不知道这个东西.由于那些Windows的集成开发环境(integrateddevelopment environment,IDE)都为你做了这 ...

  7. 【C语言】模拟实现memmove函数(考虑内存重叠)

    //模拟实现memmove函数(考虑内存重叠) #include <stdio.h> #include <assert.h> #include <string.h> ...

  8. C++对象模型——Template中的名称决议方式 (第七章)

    Template中的名称决议方式 (Name Resolution within a Template) 必须可以区分下面两种意义,一种是C++ Standard所谓的"sope of th ...

  9. Project Perfect让Swift在server端跑起来-引言(一)

    编者语:今天是大年初一.先和大家简单说一句猴年快乐! watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/ ...

  10. MDK链接脚本错误

    我想让我的程序运行在RAM中而不是在SPI FLASH上,写了一个scatterfile: ROM 0x00000000 0x00200000 ;spi flash{STARTUP +0 { star ...