一 安装

百度云:所有附件的地址

unzip fastdfs-nginx-module-master.zip

[root@node02 mnt]# cd fastdfs-nginx-module-master/
[root@node02 fastdfs-nginx-module-master]# ll
总用量 8
-rw-r--r-- 1 root root 2804 5月 30 2017 HISTORY
-rw-r--r-- 1 root root 1722 5月 30 2017 INSTALL
drwxr-xr-x 2 root root 109 5月 30 2017 src
[root@node02 fastdfs-nginx-module-master]#​

安装nginx

(1)安装pcre依赖 第一步联网下载pcre压缩文件依赖 wget http://downloads.sourceforge.net/project/pcre/pcre/8.37/pcre-8.37.tar.gz

drwxr-xr-x  9 es   es         186 10月  4 21:41 nginx-1.12.2
-rw-r--r-- 1 root root 981687 10月 4 20:30 nginx-1.12.2.tar.gz
drwxr-xr-x 9 1169 1169 12288 10月 4 21:40 pcre-8.37
-rw-r--r-- 1 root root 2041593 10月 4 20:30 pcre-8.37.tar.gz
第二步解压压缩文件
tar -zvxf fpcre-8.37.tar.gz

第三步./configure完成后,回到pcre目录下执行make,最后执行make install

(2)安装openssl、zlib、gcc依赖

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

(3) 其中--prefix是指定nginx安装路径,--add-module指定fastDFS的nginx模块的源代码路径

./configure --prefix=/usr/local/nginx_fdfs --add-module=/mnt/fastdfs-nginx-module-master/src

(4)安装nginx 使用命令解压

  • make && make install

注:以上安装Nginx的FastDFS扩展模块注意事项(也可以这样安装)

我们知道,Nginx的安装需要Linux安装相关的几个库,否则编译会出现错误,这几个库分别是:
1、gcc编译器是否安装?
  检查是否安装:yum list installed | grep gcc
  执行安装:yum install gcc -y
2、openssl库是否安装?
  检查是否安装:yum list installed | grep openssl
  执行安装:yum install openssl openssl-devel -y
3、pcre库是否安装?
  检查是否安装:yum list installed | grep pcre
  执行安装:yum install pcre pcre-devel -y
4、zlib库是否安装?
  检查是否安装:yum list installed | grep zlib
  执行安装:yum install zlib zlib-devel -y
yum install gcc openssl openssl-devel pcre pcre-devel zlib zlib-devel -y

二 配置

1、将/mnt/fastdfs-nginx-module-master/src目录下的mod_fastdfs.conf文件拷贝到 /etc/fdfs/目录下,这样才能正常启动Nginx;

2、修改mod_fastdfs.conf配置文件:

base_path=/opt/fastdfs/nginx_mod
tracker_server=192.168.180.104:22122
store_path0=/opt/fastdfs/storage/files
url_have_group_name = true

3、配置Nginx的配置文件

#拦截请求路径中包含 /group[1-9]/M0[0-9] 的请求,使用 fastdfs的Nginx 模块进行转发:
location ~ /group[1-9]/M0[0-9] {
ngx_fastdfs_module;
}

注:如果出现404访问不到,检查一下 url_have_group_name = false

[root@node02 fdfs]# cat mod_fastdfs.conf
# connect timeout in seconds
# default value is 30s
connect_timeout=2

# network recv and send timeout in seconds
# default value is 30s
network_timeout=30

# the base path to store log files
base_path=/opt/fastdfs/nginx_mod

# if load FastDFS parameters from tracker server
# since V1.12
# default value is false
load_fdfs_parameters_from_tracker=true

# storage sync file max delay seconds
# same as tracker.conf
# valid only when load_fdfs_parameters_from_tracker is false
# since V1.12
# default value is 86400 seconds (one day)
storage_sync_file_max_delay = 86400

# if use storage ID instead of IP address
# same as tracker.conf
# valid only when load_fdfs_parameters_from_tracker is false
# default value is false
# since V1.13
use_storage_id = false

# specify storage ids filename, can use relative or absolute path
# same as tracker.conf
# valid only when load_fdfs_parameters_from_tracker is false
# since V1.13
storage_ids_filename = storage_ids.conf

# FastDFS tracker_server can ocur more than once, and tracker_server format is
# "host:port", host can be hostname or ip address
# valid only when load_fdfs_parameters_from_tracker is true
tracker_server=192.168.180.104:22122

# the port of the local storage server
# the default value is 23000
storage_server_port=23000

# the group name of the local storage server
group_name=group1

# if the url / uri including the group name
# set to false when uri like /M00/00/00/xxx
# set to true when uri like ${group_name}/M00/00/00/xxx, such as group1/M00/xxx
# default value is false
url_have_group_name = true

# path(disk or mount point) count, default value is 1
# must same as storage.conf
store_path_count=1

# store_path#, based 0, if store_path0 not exists, it's value is base_path
# the paths must be exist
# must same as storage.conf
store_path0=/opt/fastdfs/storage/files
#store_path1=/home/yuqing/fastdfs1

# standard log level as syslog, case insensitive, value list:
### emerg for emergency
### alert
### crit for critical
### error
### warn for warning
### notice
### info
### debug
log_level=info

# set the log filename, such as /usr/local/apache2/logs/mod_fastdfs.log
# empty for output to stderr (apache and nginx error_log file)
log_filename=

# response mode when the file not exist in the local file system
## proxy: get the content from other storage server, then send to client
## redirect: redirect to the original storage server (HTTP Header is Location)
response_mode=proxy

# the NIC alias prefix, such as eth in Linux, you can see it by ifconfig -a
# multi aliases split by comma. empty value means auto set by OS type
# this paramter used to get all ip address of the local host
# default values is empty
if_alias_prefix=

# use "#include" directive to include HTTP config file
# NOTE: #include is an include directive, do NOT remove the # before include
#include http.conf


# if support flv
# default value is false
# since v1.15
flv_support = true

# flv file extension name
# default value is flv
# since v1.15
flv_extension = flv


# set the group count
# set to none zero to support multi-group on this storage server
# set to 0 for single group only
# groups settings section as [group1], [group2], ..., [groupN]
# default value is 0
# since v1.14
group_count = 0

# group settings for group #1
# since v1.14
# when support multi-group on this storage server, uncomment following section
#[group1]
#group_name=group1
#storage_server_port=23000
#store_path_count=2
#store_path0=/home/yuqing/fastdfs
#store_path1=/home/yuqing/fastdfs1

# group settings for group #2
# since v1.14
# when support multi-group, uncomment following section as neccessary
#[group2]
#group_name=group2
#storage_server_port=23000
#store_path_count=1
#store_path0=/home/yuqing/fastdfs

[root@node02 fdfs]#

三 启动与测试
1、启动带有fastdfs模块的Nginx 2、重启fastDFS服务进程,执行如下命令: fdfs_trackerd /etc/fdfs/tracker.conf restart fdfs_storaged /etc/fdfs/storage.conf restart 3、上传一个文件进行测试验证: fdfs_test /etc/fdfs/client.conf upload /root/aa.txt 4、在浏览器访问上传的文件 [root@node02 conf]# /usr/local/nginx_fdfs/sbin/nginx -c /usr/local/nginx_fdfs/conf/nginx.conf -t
ngx_http_fastdfs_set pid=5196
nginx: the configuration file /usr/local/nginx_fdfs/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx_fdfs/conf/nginx.conf test is successful
[root@node02 conf]#
[root@node02 conf]# /usr/local/nginx_fdfs/sbin/nginx -c /usr/local/nginx_fdfs/conf/nginx.conf
ngx_http_fastdfs_set pid=5205
[root@node02 conf]#
[root@node02 ~]# cp anaconda-ks.cfg aa.txt
[root@node02 ~]# fdfs_test /etc/fdfs/client.conf upload /root/aa.txt
This is FastDFS client test program v5.11

Copyright (C) 2008, Happy Fish / YuQing

FastDFS may be copied only under the terms of the GNU General
Public License V3, which may be found in the FastDFS source kit.
Please visit the FastDFS Home Page http://www.csource.org/
for more detail.

[2019-11-09 13:47:00] DEBUG - base_path=/opt/fastdfs/client, connect_timeout=30, network_timeout=60, tracker_server_count=1, anti_steal_token=0, anti_steal_secret_key length=0, use_connection_pool=0, g_connection_pool_max_idle_time=3600s, use_storage_id=0, storage server id count: 0

tracker_query_storage_store_list_without_group:
server 1. group_name=, ip_addr=192.168.180.104, port=23000

group_name=group1, ip_addr=192.168.180.104, port=23000
storage_upload_by_filename
group_name=group1, remote_filename=M00/00/00/wKi0aF3GUtSAb_FLAAAGwzv_BVg111.txt
source ip address: 192.168.180.104
file timestamp=2019-11-09 13:47:00
file size=1731
file crc32=1006568792
example file url: http://192.168.180.104/group1/M00/00/00/wKi0aF3GUtSAb_FLAAAGwzv_BVg111.txt
storage_upload_slave_by_filename
group_name=group1, remote_filename=M00/00/00/wKi0aF3GUtSAb_FLAAAGwzv_BVg111_big.txt
source ip address: 192.168.180.104
file timestamp=2019-11-09 13:47:00
file size=1731
file crc32=1006568792
example file url: http://192.168.180.104/group1/M00/00/00/wKi0aF3GUtSAb_FLAAAGwzv_BVg111_big.txt
[root@node02 ~]#

FastDFS整合nginx(三)的更多相关文章

  1. FastDFS整合nginx后,nginx一直报错

    FastDFS整合nginx后,nginx一直报错: 报错内容: [2018-06-11 09:41:21] ERROR - file: ../common/fdfs_http_shared.c, l ...

  2. CentOS单机安装FastDFS&整合Nginx

    单机安装 一 准备工作 准备linux服务器或虚拟机,这里是虚拟机,操作系统CentOS 6.4 Tracker 和 Storage 安装在一台机器上 FastDFS 5.08版本 1,准备软件 软件 ...

  3. FastDFS整合Nginx

    浏览器访问FastDFS存储的图片需要通过Nginx访问 需要安装fastdfs-nginx-module.Nginx 安装fastdfs-nginx-module模块 (1)将fastdfs-ngi ...

  4. FastDFS整合Nginx的模块:fastdfs-nginx-module报错:fdfs_define.h:15:27: 致命错误:common_define.h:没有那个文件或目录

    错误提示: /usr/include/fastdfs/fdfs_define.h:15:27: 致命错误:common_define.h:没有那个文件或目录 [解决办法] 1.编辑fastdfs-ng ...

  5. FastDFS整合nginx模块报错

    之前在本地虚拟机用的都是5.1的版本和1.12的nginx,在服务器上尝试一下高版本的6.1 一直报错各种,例如: undeclared (first use in this function) 尝试 ...

  6. Nginx缩略图和Fastdfs整合以及image_filter配置,7点经验结论和5个参考资料

    以下是7点经验结论和5个参考资料 1.Nginx单独配置缩略图与Nginx和Fastdfs模块整合,配置是不一样的. 非整合模式的配置,类似这样的:  location ~* /(\d+)\.(jpg ...

  7. FastDFS 与 Nginx 实现分布式图片服务器

    FastDFS 与 Nginx 实现分布式图片服务器 本人的 Ubuntu18.04 用户名为 jj 点我下载所有所需的压缩包文件 一.FastDFS安装 1.安装 fastdfs 依赖包 ① 解压 ...

  8. FastDFS与Nginx的搭建及遇到的问题

    1.1  FastDFS与Nginx的搭建 可以使用一台虚拟机来模拟,只有一个Tracker.一个Storage服务. 配置nginx访问图片. 1.1.1   搭建步骤 第一步:把fastDFS需要 ...

  9. linux 下 整合 nginx 和 php

    一.整合nginx 和 PHP: # vi /usr/local/php/etc/php-fpm.conf 如果该文件不存在,有可能是默认的php-fpm.conf.default 可以使用命令拷贝一 ...

随机推荐

  1. QCOW2/RAW/qemu-img 概念浅析

    目录 目录 扩展阅读 RAW QCOW2 QEMU-COW 2 QCOW2 Header QCOW2 的 COW 特性 QCOW2 的快照 qemu-img 的基本使用 RAW 与 QCOW2 的区别 ...

  2. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_07 缓冲流_1_缓冲流的原理

    一个字节一个字节的读取,先读取到a,a给到os操作系统.os再给JVM,.jVM再把a给java程序 读完a再读取b.这样一层层的返回,效率低下 一次读取,缓冲区数组返回来.

  3. 阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第1节 Scanner类_1-API概述和使用步骤

    官方翻译的中文版本

  4. oracle 11g 数据库恢复技术 ---04 rman

    四 RMAN RMAN体系结构的主要组成部分: --1 目标数据库(target) --2 RMAN命令行客户端 --3 通道(channel) --4 快速恢复区(fast recovery are ...

  5. vue组件父与子通信-登录窗口

    一.组件间通信(父组件    -->  子组件)步骤:①父组件在调用子组件 传值 <child-component myValue="123"> </chi ...

  6. 2019_Chrome和ChromeDriver对应关系

    Chrome和ChromeDriver对应关系 ChromeDriver下载地址:http://chromedriver.storage.googleapis.com/index.html Chrom ...

  7. Jmeter JDBC请求-----数据库读取数据进行参数化 通过SSH跳板机连接数据库

    前期准备: jdbc驱动:mysql-connector-java-5.1.7-bin.jar Jmeter 要链接MySQL数据库,首选需要下载mysql jdbc驱动包(注:驱动包的版本一定要与你 ...

  8. js模块化编程之CommonJS和AMD/CMD!

    有了模块,我们就可以更方便地使用别人的代码,想要什么功能,就加载什么模块. 但是,这样做有一个前提,那就是大家必须以同样的方式编写模块,否则你有你的写法,我有我的写法,岂不是乱了套! 于是下面三个模块 ...

  9. oracle--少见操作、如何调整dos窗口大小、字符集设置

    如何调整dos窗口大小 1.set linesize 400; 2.右键 --默认值 断开.连接 disconn ; conn ww/ww; 关于字符集 操作系统环境变量针对语言项设置有几个,我经常设 ...

  10. vuejs基础-MVVM结构

    Vue.js 基本代码 和 MVVM 之间的对应关系 处理过程: 每当用户进行业务处理时,如果需要进行业务处理,都会通过网络请求,去请求后端的服务器,此时,我们的这个请求,就会被后端的App.js监听 ...