搜索
首页运维NginxFastDFS怎么安装和配置整合Nginx-1.13.3

一:下载fastdfs

  我们一共需要三个文件

  1.fastdfs  分布式文件存储系统  

  2.libfastcommon  fastdfs函数库  

  3.fastdfs-nginx-module  连接nginx功能模块  

  下载时候请注意,此处下载的格式为 .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权限进行操作

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

FastDFS怎么安装和配置整合Nginx-1.13.3

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

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

 例如: mv fastdfs-master fastdfs

<img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/887/227/168422662134669.png" class="lazy" alt="FastDFS怎么安装和配置整合Nginx-1.13.3">

二:安装fastdfs

  1.安装fastdfs函数库

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

    编译文件 ./make.sh

    安装:    ./make.sh install

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

    编译文件  ./make.sh

    安装:      ./make.sh install 

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

FastDFS怎么安装和配置整合Nginx-1.13.3

三:配置

  1.配置说明

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

  2.配置文件目录

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

FastDFS怎么安装和配置整合Nginx-1.13.3

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

FastDFS怎么安装和配置整合Nginx-1.13.3

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

  3.配置和启动tracker server

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

FastDFS怎么安装和配置整合Nginx-1.13.3

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

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

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

FastDFS怎么安装和配置整合Nginx-1.13.3

  可以看到tracker server 已经在22122端口监听

  4.配置和启动storage server

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

FastDFS怎么安装和配置整合Nginx-1.13.3

  tracker server地址:

FastDFS怎么安装和配置整合Nginx-1.13.3

  store_path 地址:

FastDFS怎么安装和配置整合Nginx-1.13.3

注:以上的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看看是否启动

FastDFS怎么安装和配置整合Nginx-1.13.3

    出现上图的情况,说明tracker server、storage server已经成功启动。

  5.测试上传服务

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

FastDFS怎么安装和配置整合Nginx-1.13.3

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

FastDFS怎么安装和配置整合Nginx-1.13.3

  使用命令将图片上传

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

FastDFS怎么安装和配置整合Nginx-1.13.3

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

FastDFS怎么安装和配置整合Nginx-1.13.3

  虽然返回图片地址,但是现在的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))

FastDFS怎么安装和配置整合Nginx-1.13.3

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

FastDFS怎么安装和配置整合Nginx-1.13.3

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

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

location /group1/m00 {
  ngx_fastdfs_module;
}

FastDFS怎么安装和配置整合Nginx-1.13.3

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

  2.配置模块参数

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

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

FastDFS怎么安装和配置整合Nginx-1.13.3

  明晃晃的两个 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:

FastDFS怎么安装和配置整合Nginx-1.13.3

  url_have_group_name:

FastDFS怎么安装和配置整合Nginx-1.13.3

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

  store_path0:

FastDFS怎么安装和配置整合Nginx-1.13.3

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

FastDFS怎么安装和配置整合Nginx-1.13.3

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

以上是FastDFS怎么安装和配置整合Nginx-1.13.3的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:亿速云。如有侵权,请联系admin@php.cn删除
内存飙升!记一次nginx拦截爬虫内存飙升!记一次nginx拦截爬虫Mar 30, 2023 pm 04:35 PM

本篇文章给大家带来了关于nginx的相关知识,其中主要介绍了nginx拦截爬虫相关的,感兴趣的朋友下面一起来看一下吧,希望对大家有帮助。

nginx限流模块源码分析nginx限流模块源码分析May 11, 2023 pm 06:16 PM

高并发系统有三把利器:缓存、降级和限流;限流的目的是通过对并发访问/请求进行限速来保护系统,一旦达到限制速率则可以拒绝服务(定向到错误页)、排队等待(秒杀)、降级(返回兜底数据或默认数据);高并发系统常见的限流有:限制总并发数(数据库连接池)、限制瞬时并发数(如nginx的limit_conn模块,用来限制瞬时并发连接数)、限制时间窗口内的平均速率(nginx的limit_req模块,用来限制每秒的平均速率);另外还可以根据网络连接数、网络流量、cpu或内存负载等来限流。1.限流算法最简单粗暴的

nginx+rsync+inotify怎么配置实现负载均衡nginx+rsync+inotify怎么配置实现负载均衡May 11, 2023 pm 03:37 PM

实验环境前端nginx:ip192.168.6.242,对后端的wordpress网站做反向代理实现复杂均衡后端nginx:ip192.168.6.36,192.168.6.205都部署wordpress,并使用相同的数据库1、在后端的两个wordpress上配置rsync+inotify,两服务器都开启rsync服务,并且通过inotify分别向对方同步数据下面配置192.168.6.205这台服务器vim/etc/rsyncd.confuid=nginxgid=nginxport=873ho

nginx php403错误怎么解决nginx php403错误怎么解决Nov 23, 2022 am 09:59 AM

nginx php403错误的解决办法:1、修改文件权限或开启selinux;2、修改php-fpm.conf,加入需要的文件扩展名;3、修改php.ini内容为“cgi.fix_pathinfo = 0”;4、重启php-fpm即可。

如何解决跨域?常见解决方案浅析如何解决跨域?常见解决方案浅析Apr 25, 2023 pm 07:57 PM

跨域是开发中经常会遇到的一个场景,也是面试中经常会讨论的一个问题。掌握常见的跨域解决方案及其背后的原理,不仅可以提高我们的开发效率,还能在面试中表现的更加

nginx部署react刷新404怎么办nginx部署react刷新404怎么办Jan 03, 2023 pm 01:41 PM

nginx部署react刷新404的解决办法:1、修改Nginx配置为“server {listen 80;server_name https://www.xxx.com;location / {root xxx;index index.html index.htm;...}”;2、刷新路由,按当前路径去nginx加载页面即可。

Linux系统下如何为Nginx安装多版本PHPLinux系统下如何为Nginx安装多版本PHPMay 11, 2023 pm 07:34 PM

linux版本:64位centos6.4nginx版本:nginx1.8.0php版本:php5.5.28&php5.4.44注意假如php5.5是主版本已经安装在/usr/local/php目录下,那么再安装其他版本的php再指定不同安装目录即可。安装php#wgethttp://cn2.php.net/get/php-5.4.44.tar.gz/from/this/mirror#tarzxvfphp-5.4.44.tar.gz#cdphp-5.4.44#./configure--pr

nginx怎么禁止访问phpnginx怎么禁止访问phpNov 22, 2022 am 09:52 AM

nginx禁止访问php的方法:1、配置nginx,禁止解析指定目录下的指定程序;2、将“location ~^/images/.*\.(php|php5|sh|pl|py)${deny all...}”语句放置在server标签内即可。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),