搭建FastDFS图片服务器(2)

柔光的暖阳◎ 2024-04-01 13:21 151阅读 0赞

目录

一、使用Nginx访问FastDFS

1、为什么使用Nginx访问?

2、安装fastdfs-nginx-module插件

2、1 解压

2、2 修改config

2、3 配置fastdfs-nginx-module与FastDFS关联配置文件

二、安装Nginx

1、安装Nginx

1、1安装nginx的依赖库

2、配置Nginx.conf

2、1修改nginx配置文件:

2、2部分代码替换为如下代码:

2、3启动nginx:

2、4可通过ps -ef | grep nginx查看nginx是否已启动成功

3、设置Nginx开机自启

3、1添加nginx.service文件

3、2文件内容如下

4、设置开机启动


一、使用Nginx访问FastDFS

1、为什么使用Nginx访问?

FastDFS通过Tracker服务器,将文件放在Storage服务器存储,但是同组存储服务器之间需要进入文件复制,有同步延迟的问题。

假设Tracker服务器将文件上传到了192.168.4.125,上传成功后文件ID已经返回给客户端。此时FastDFS存储集群机制会将这个文件同步到同组存储192.168.4.126,在文件还没有复制完成的情况下,客户端如果用这个文件ID在192.168.4.126上取文件,就会出现文件无法访问的错误。

而fastdfs-nginx-module可以重定向文件连接到文件上传时的源服务器取文件,避免客户端由于复制延迟导致的文件无法访问错误。

2、安装fastdfs-nginx-module插件

2、1 解压

  1. tar -zxvf fastdfs-nginx-module_v1.16.tar.gz

2、2 修改config

1)进入src目录

  1. cd fastdfs-nginx-module/src/

2)编辑config

  1. vim config

使用以下底行命令:

  1. :%s+/usr/local/+/usr/+g

将所有的/usr/local替换为 /usr,这个才是正确的目录:

dbdf5ab256b8aa303b511e78c7a5adc1.png

2、3 配置fastdfs-nginx-module与FastDFS关联配置文件

复制 fastdfs-nginx-module 源码中的配置文件到/etc/fdfs 目录, 并修改

  1. cp /usr/upload/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
  2. vim /etc/fdfs/mod_fastdfs.conf

修改以下配置:

  1. connect_timeout=10 # 客户端访问文件连接超时时长(单位:秒)
  2. tracker_server=192.168.204.158:22122 # tracker服务IP和端口
  3. url_have_group_name=true # 访问链接前缀加上组名
  4. store_path0=/powershop/storage # 文件存储路径

复制 FastDFS 的部分配置文件到/etc/fdfs 目录,否则不支持nginx

  1. cd /usr/upload/FastDFS/conf/
  2. cp http.conf mime.types /etc/fdfs/

二、安装Nginx

1、安装Nginx

1、1安装nginx的依赖库

  1. yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

1、2解压安装包

  1. tar -zxvf nginx-1.10.0.tar.gz

1、3配置nginx安装包,并指定fastdfs-nginx-model

  1. cd nginx-1.10.0
  2. ./configure --prefix=/usr/local/nginx --add-module=/usr/upload/fastdfs-nginx-module/src

注意:在执行./configure配置nginx参数的时候,需要将fastdfs-nginx-moudle源码作为模块编译进去。

1、4编译并安装

  1. make && make install

2、配置Nginx.conf

2、1修改nginx配置文件:

  1. vim /usr/java/nginx/conf/nginx.conf

2、2部分代码替换为如下代码:

  1. # 监听域名中带有group的,交给FastDFS模块处理
  2. location ~/group([0-9])/ {
  3. ngx_fastdfs_module;#获得fastdfs中图片的存在路径 /usr/storage/group/0/atm.jpg
  4. }

2、3启动nginx:

  1. ./nginx # 启动nginx
  2. ./nginx -s stop # 停止nginx
  3. ./nginx -s reload # 重新载入配置文件

2、4可通过ps -ef | grep nginx查看nginx是否已启动成功

4aa7d1c16388cfc9d7d7de268e090fd9.png

3、设置Nginx开机自启

3、1添加nginx.service文件

  1. vim /lib/systemd/system/nginx.service

3、2文件内容如下

  1. [Unit]
  2. Description=nginx
  3. After=network.target
  4. [Service]
  5. Type=forking
  6. ExecStart=/usr/local/nginx/sbin/nginx
  7. ExecReload=/usr/local/nginx/sbin/nginx -s reload
  8. ExecStop=/usr/local/nginx/sbin/nginx -s stop
  9. PrivateTmp=true
  10. [Install]
  11. WantedBy=multi-user.target

建议这段直接复制粘贴

4、设置开机启动

  1. systemctl daemon-reload #重新加载服务配置
  2. systemctl enable nginx.service #设置为开机启动
  3. systemctl start nginx.service #启动服务
  4. systemctl status nginx.service #查看服务状态
  5. systemctl stop nginx.service #停止服务

设置开机前记得先停止之前的nginx服务。

好了,这总算没烂尾,到此自己的一个图片服务器就搭建好了,动手能力强的小伙伴快去自己搭建吧!

发表评论

表情:
评论列表 (有 0 条评论,151人围观)

还没有评论,来说两句吧...

相关阅读