这篇文章主要介绍了FastDFS如何安装fastdfs-nginx-module和nginx,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
FastDFS通过Tracker服务器,将文件放在Storage服务器存储,但是同组存储服务器之间需要进入文件复制,有同步延迟的问题。假设Tracker服务器将文件上传到了192.168.4.125,上传成功后文件ID已经返回给客户端。此时FastDFS存储集群机制会将这个文件同步到同组存储192.168.4.126,在文件还没有复制完成的情况下,客户端如果用这个文件ID在192.168.4.126上取文件,就会出现文件无法访问的错误。而fastdfs-nginx-module可以重定向文件连接到源服务器取文件,避免客户端由于复制延迟导致的文件无法访问错误。
1、下载fastdfs-nginx-module并解压缩
# cd /usr/local
# wget https://sourceforge.net/projects/fastdfs/files/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1.16.tar.gz
# tar -zxvf fastdfs-nginx-module_v1.16.tar.gz
2、编辑config文件
# cd fastdfs-nginx-module/src/
# vi config
编辑config文件,执行如下命令进行批量替换并保存退出
:%s+/usr/local/+/usr/+g
(按回车键进行替换)
3、拷贝fastdfs-nginx-module模块中配置文件到/etc/fdfs目录中并编辑
# cp /usr/local/fastdfs-nginx-module/src/mod_fastdfs.conf/etc/fdfs/
# vi /etc/fdfs/mod_fastdfs.conf
修改内容如下:
connect_timeout=10(默认2)
base_path=/tmp(默认为/tmp)
tracker_server=192.168.121.110:22122(默认为tracker:22122)
storage_server_port=23000(默认配置为23000)
group_name=group1(默认配置为group1)
url_have_group_name = true(默认为false)
store_path0=/data/fastdfs(默认为/home/yuqing/fastdfs)
4、安装nginx依赖库
# yum install -y pcre-devel zlib-devel
5、安装nginx
# mv /root/桌面/nginx-1.8.1.tar.gz /usr/local/
# cd /usr/local
# tar -zxvf nginx-1.8.1.tar.gz
# cd nginx-1.8.1
# ./configure --prefix=/application/nginx/--add-module=../fastdfs-nginx-module/src/
# make && make install
6、拷贝FastDFS中的部分配置文件到/etc/fdfs目录中
# cp /usr/local/FastDFS/conf/http.conf /etc/fdfs/
# cp /usr/local/FastDFS/conf/mime.types /etc/fdfs/
7、配置nginx
# vi /application/nginx/conf/nginx.conf
user root;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 8888;
server_name localhost;
location~/group[0-9]/ {
ngx_fastdfs_module;
}
error_page 500 502 503 504 /50x.html;
location =/50x.html {
root html;
}
}
}
说明:
(1)"user root"是解决下载操作时报404的问题
(2)8888端口号与/etc/fdfs/storage.conf中的http.server_port=8888相对应
(3)storage对应有多个group的情况下,访问路径带group名称,例如:/group1/M00/00/00/**,对应nginx配置:
location ~/group[0-9]/ {
ngx_fastdfs_module;
}
8、拷贝nginx服务到/etc/init.d/目录下并启动
# cp /application/nginx/sbin/nginx /etc/init.d/
# /etc/init.d/nginx
# ss -lntup | grep 8888
tcp LISTEN 0 128 *:8888 *:* users:(("nginx",7308,6),("nginx",7309,6))
9、通过浏览器访问之前已经上传的文件
在浏览器中输入
http://192.168.121.110:8888/group1/M00/00/00/wKh6blkcHpiAAEBkAAC7L7_PW5E715.jpg
感谢你能够认真阅读完这篇文章,希望小编分享的“FastDFS如何安装fastdfs-nginx-module和nginx”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网行业资讯频道,更多相关知识等着你来学习!