FastDFS安装和配置整合Nginx-1.13.3的方法

一:下载FastDFS

  我们一共需要三个文件

  1.FastDFS  分布式文件存储系统  下载地址:https://codeload.github.com/happyfish100/fastdfs-client-java/zip/master

  2.libfastcommon  FastDFS函数库  下载地址:  https://codeload.github.com/happyfish100/libfastcommon/zip/master

  3.fastdfs-nginx-module  连接Nginx功能模块  下载地址: https://codeload.github.com/happyfish100/fastdfs-nginx-module/zip/master

  下载时候请注意,此处下载的格式为 .zip 并不是 tar.gz。之所以如此是因为,在使用fastdfs-nginx-module模块整合Nginx时候会出错,原因是 FastDFS版本必须 >= 5.11才可以。否则编译Nginx的时候会报错。可以看看模块的 INSTALL文件,里面有说明。由于FastDFS发布的版本最高只到 5.10,作者还没有将版本更新到5.11.但是github上的代码已经更新,所以直接下载即可。这里是作者 GitHub地址

注:解压zip格式的文件,需要系统已经安装了 unzip软件。没有的可以使用命令安装: yum install zip unzip 

  为了安装方便,操作过程中,可以切换到root权限进行操作

  下载完成之后,将文件夹上传到服务器

  再次提醒此处的都是zip格式的文件,使用命令 unzip fileName 逐一解压每个zip文件。例如:  unzip fastdfs-master

  下面是解压后的情况,因为不喜欢带master 的后缀,在解压之后删除了。可以使用命令操作   mv oldFileName newFileName

例如: mv fastdfs-master fastdfs

二:安装FastDFS

  1.安装FastDFS函数库

  解压之后,先进入 libfastcommon 目录   cd libfastcommon

    编译文件 ./make.sh

    安装:    ./make.sh install

  安装完成之后,进入 fastdfs  cd fastdfs libfastcommon 同样的安装方式

    编译文件  ./make.sh

    安装:      ./make.sh install 

  安装完成之后,可以看到两个目录,后面会使用到

三:配置

  1.配置说明

  配置文件请根据服务器的不同,进行不同的配置。本文中 Tracker Server, Storage Server 都安装在一台服务器上。

  2.配置文件目录

  在安装完成之后,在 /etc 下会生成一个 fdfs 文件夹,进入fast配置文件目录 cd /etc/fdfs/ 。可以看到以 .sample 结尾的示例文件。

  为了方便,使用命令删除以上所有文件  rm -f * ,然后复制 /fastdfs/conf 目录内所有文件到 /etc/fdfs 目录下。

注:/fastdfs/conf为解压后的fastdfs目录

  3.配置和启动Tracker Server

  打开 tracker.conf文件  vim ./tracker.conf , 修改base_path路径改成你自己的目录, 端口之类的没占用情况下就不修改了

  修改完成之后,尝试启动tracker  /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start

注:base_path路径需要预先创建, 否则报错: error info: No such file or directory

  命令执行之后,发现没有任何反应,接着使用命令 netstat -unltp|grep fdfs ,查看是否启动

  可以看到Tracker Server 已经在22122端口监听

  4.配置和启动Storage Server

  接下来修改storage.conf配置文件  vim storage.conf ,打开文件之后同样的修改base_path路径,同时修改Tracker Server地址和store_path。端口地址、组名保持不变。

  Tracker Server地址:

  store_path 地址:

注:以上的Tracker Server地址,请设置成服务器对应地址。端口没修改情况下,保持默认。

  store_path路径如果不修改,将无法启动Storage Server服务。不会有任何提示,可以打开 /fastdfs/logs 文件夹下的storaged.log文件,查看错误信息。

  OK,修改完成之后,启动Storage, /usr/bin/fdfs_storaged /etc/fdfs/storage.conf start ,同样也是没有任何反应。接着使用命令  netstat -unltp|grep fdfs看看是否启动

   出现上图的情况,说明Tracker Server、Storage Server已经成功启动。

  5.测试上传服务

  接下来打开client.conf配置文件  vim client.conf ,只需要修改base_path和tracker_server两个地方即可。

  当修改完成之后,试试能否上传文件,刚好目录有一张图片

  使用命令将图片上传

 /usr/bin/fdfs_test /etc/fdfs/client.conf upload ./anti-steal.jpg

  当看到上面一长串的字符,OK 上传成功了。并成功返回了 图片地址。到存储目录下看看,发现多出了几张图片。其中一张图片和商品图片地址后缀一样,那么文件已经存储到本地。

  虽然返回图片地址,但是现在的fastDFS已经不支持HTTP协议。在4.0.5版本时候已经移除了 HTTP支持,因此不能直接通过图片地址访问。所有我们通过FastDFS模块整合Nginx,以提供HTTP服务。

四.整合Nginx和FastDFS

  1. 整合模块

  此处假设你已经安装过Nginx及其依赖包,如果还没有安装Nginx可以看我另一个文章:CentOS7 安装Nginx

  整合Nginx不需要安装FastDFS模块,在配置Nginx时候将fastdfs-nginx-module模块添加进去即可。下面先开始配置Nginx,进入Nginx目录下配置文件

./configure
--prefix=/opt/nginx
--with-pcre=/home/mgame/soft/pcre-8.41
--with-openssl=/home/mgame/soft/openssl-1.1.0f
--with-zlib=/home/mgame/soft/zlib-1.2.11
--add-module=/home/mgame/soft/fastdfs-nginx-module/src

    编译  make

    安装  make install

  在安装过程如果出现下面的错误,那么请查看模块中的 INSTALL文件,对FastDFS版本的要求(开头部分已经说明本文的FastDFS版本必须>= 5.11)。

  error: ‘FDFSHTTPParams' has no member named ‘support_multi_range'(pContext->range_count > 1 && !g_http_params.support_multi_range))

  将模块添加到Nginx并安装完成之后,进入到Nginx安装目录 /opt/nginx/conf 内,打开 nginx.conf配置文件。

  注:此处的Nginx目录,是在配置Nginx时候设置的,请根据各自的设置,打开文件。

  将下面的配置添加到文件中,端口其他设置不变。

location /group1/M00 {
  ngx_fastdfs_module;
}

  注:/group 前面必须有斜线,否则在访问的时候,根路径为Nginx安装目录。

  2.配置模块参数

  在设置完成之后, 如果现在直接启动Nginx那么会发现,依然无法通过之前上传成功的图片地址访问。在百思不得其解情况下,想到了的Nginx不是有个logs文件夹,用于记录登录及错误信息之类的详情。

  那么打开error.log文件看看。OK 找到问题所在了

  明晃晃的两个 ERROR, 第一行说明了错误原因:file /etc/fdfs/mod_fastdfs.conf not exist   在 /etc/fdfs/ 目录下不存在mod_fastdfs.conf文件。该文件在模块fastdfs-nginx-module的src目录内

  既然找到了文件位置,那么进入到 /fastdfs-nginx-module/src 目录下,将文件 mod_fastdfs.conf 复制到 /etc/fdfs/ 目录下  命令: cp mod_fastdfs.conf /etc/fdfs/

  操作完成之后,打开刚刚拷贝的mod_fastdfs.conf 配置文件  vim mod_fastdfs.conf ,分别tracker_server、url_have_group_name、store_path0三个属性的参数

  tracker_server:

  url_have_group_name:

  注:因为访问的地址中包含了组名group1,如果生成的地址中不包含组名,可以不用设置。

  store_path0:

  修改完成之后,进入 /opt/nginx/sbin 目录下,重新启动Nginx  ./nginx -s reload ,然后访问下,之前上传成功后返回的图片地址吧。

  经过配置后,已经能够成功的访问FastDFS存储的文件。

总结

以上所述是小编给大家介绍的FastDFS安装和配置整合Nginx-1.13.3的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • nginx的FastDFS分布式存储模块测试方法

    再回过头来看FastDFS更新很快,还看到fastdfs-nginx-module_v1.01.tar.gz nginx模块,所以今天在一台测试机上测试了·测试几天看稳定不稳定,在考虑换掉浪费资源的 lustre ! 环境: storage1:192.168.6.100 storage2:192.168.6.101 tracker:192.168.6.102 1. 在每个机器上,下载安装 FastDFS nginx $> wget http://fastdfs.googlecode.com/fi

  • Fastdfs与nginx进行压缩图片比率

    在此先把前面自己做的那个功能在此分享下,是一个模仿淘宝的,希望大神们有什么想法可以不吝赐教: 自己是通过前面的参考配置lua与nginx的结合使用,利用脚本语言lua的强大特性和nginx的特性来实现这个功能,在nginx.conf的配置文件中加入如下代码: server { listen 22222; server_name localhost; # server_name somename alias another.alias; location /images/{ alias /root

  • FastDFS安装和配置整合Nginx-1.13.3的方法

    一:下载FastDFS 我们一共需要三个文件 1.FastDFS 分布式文件存储系统 下载地址:https://codeload.github.com/happyfish100/fastdfs-client-java/zip/master 2.libfastcommon FastDFS函数库 下载地址:  https://codeload.github.com/happyfish100/libfastcommon/zip/master 3.fastdfs-nginx-module 连接Nginx

  • tomcat9 下载安装和配置+整合到eclipse的教程详解

    tomcat 官网 tomcat 相当于本地服务器,可以打开网页 下载到设置的位置,到此下载完成. 安装 1.解压下载的安装包 2.环境变量的配置,选择我的电脑,右键依次 属性–>高级–>环境变量–>系统变量,添加对CATALINA_HOME变量 对Path系统变量添加变量值 %CATALINA_HOME%\bin;%CATALINA_HOME%\lib\servlet-api.jar;%CATALINA_HOME%\lib\jsp-api.jar; 3.添加用户,进入D:\tomcat

  • Nginx安装及配置详细分析

    以下是nginx在各种环境条件下的安装与配置过程,其中还分析了中间遇到的坑以及处理方式,如果你需要往下看. nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP服务器进行网站的发布处理,另外nginx可以作为反向代理进行负载均衡的实现. 这里主要通过三个方面简单介绍nginx 反向代理负载均衡 nginx特点 1. 反向代理 关于代理 说到代理,首先我们要明确一个概念,所谓代理就是一个代表.一个

  • nginx安装以及配置的详细过程记录

    目录 1 nginx 介绍 1 什么是nginx 2 应用场景 2 nginx安装 1 下载 2 安装要求的环境 1.需要安装gcc环境 2.第三方的开发包 3 nginx安装过程 3 启动nginx 4 查看nginx是否启动 5 关闭nginx 6 重启nginx 7 刷新配置文件 8 关闭防火墙,开启远程访问 9 访问nginx 10 配置虚拟主机 11 通过端口区分不同的主机 12 多个域名区分虚拟主机 1 什么是域名 2 nginx配置 3 测试 13 正向代理 14 反向代理 15

  • centos7系统下nginx安装并配置开机自启动操作

    准备工作 我的centos7系统是最小化安装的, 缺很多库, 首先安装必须的运行库 yum install wget gcc gcc-c++ pcre-devel zlib-devel ##创建工作目录并进入工作目录 mkdir -p /z/nginx && cd /z/nginx ##获取nginx最新的安装包 wget http://nginx.org/download/nginx-1.11.10.tar.gz ##解压缩 tar zxvf nginx-1.11.10.tar.gz #

  • mysql 5.6.13 免安装版配置方法详解

    本文给大家记录在上个项目中涉及到免安装版的mysql的配置问题,今天小编把配置方法分享到我们平台供大家学习. 1. 下载mysql Community Server 5.6.13 2. 解压MySQL压缩包 将以下载的MySQL压缩包解压到自定义目录下,我的解压目录是: "D:\Program Files\MySQL\mysql-5.6.13-win32" 将解压目录下默认文件 my-default.ini 拷贝一份,改名 my.ini 复制下面的配置信息到 my.ini 保存 #如果

  • Ubuntu中Nginx的安装与配置详细说明

    1.Nginx介绍 Nginx是一个非常轻量级的HTTP服务器,Nginx,它的发音为"engine X", 是一个高性能的HTTP和 反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器. 2.对PHP支持 目前各种web 服务器对PHP的支持一共有三种: (1)通过web 服务器内置的模块来实现,例如Apache的mod_php5,类似的Apache内置的mod_perl 可以对perl支持. (2)通过CGI来实现,这个就好比之前perl的CGI,该种方式的缺点是

  • CentOS6.5系统简单安装与配置Nginx服务器的方法

    本文实例讲述了CentOS6.5系统简单安装与配置Nginx服务器的方法.分享给大家供大家参考,具体如下: 依赖包安装 在安装nginx前,需要确保系统安装了g++.gcc.openssl-devel.pcre-devel和zlib-devel软件.安装必须软件: [root@admin /]#yum install gcc-c++ yum -y install zlib zlib-devel openssl openssl--devel pcrepcre-devel 检查系统安装的Nginx:

  • Centos7下nginx的安装与配置教程详解

    说明:软件安装的基础目录路径:/usr/local 所以下载软件的时候切换到此目录下下载直接解压即可 1.安装gcc gcc-c++依赖包 yum install -y gcc gcc-c++ 2.下载编译安装PCRE库 切换到usr/local目录下执行命令 下载安装包 wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.33/pcre-8.33.tar.gz 解压安装包 tar -zxvf pcre-8.36.tar.gz 编译安

  • MYSQL8.0.13免安装版配置教程实例详解

    一.下载,本人以8.0为例 下载地址:https://dev.mysql.com/downloads/mysql/ 二.解压到某个目录,例如:D:/mysql/mysql-8.0.13-winx64 三.配置环境变量 1.新建一个变量:MYSQL_HOME 变量值:D:/mysql/mysql-8.0.13-winx64 2.修改path变量 添加一条记录:%MYSQL_HOME%/bin 四.在D:/mysql/mysql-8.0.13-winx64目录下创建my.ini文件 [mysqld]

随机推荐