在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
一:下载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软件。没有的可以使用命令安装: 为了安装方便,操作过程中,可以切换到root权限进行操作 下载完成之后,将文件夹上传到服务器 再次提醒此处的都是zip格式的文件,使用命令 下面是解压后的情况,因为不喜欢带master 的后缀,在解压之后删除了。可以使用命令操作 例如: 二:安装FastDFS 1.安装FastDFS函数库 解压之后,先进入 编译文件 安装: 安装完成之后,进入 编译文件 安装: 安装完成之后,可以看到两个目录,后面会使用到 三:配置 1.配置说明 配置文件请根据服务器的不同,进行不同的配置。本文中 Tracker Server, Storage Server 都安装在一台服务器上。 2.配置文件目录 在安装完成之后,在 /etc 下会生成一个 fdfs 文件夹,进入fast配置文件目录 为了方便,使用命令删除以上所有文件 注:/fastdfs/conf为解压后的fastdfs目录 3.配置和启动Tracker Server 打开 修改完成之后,尝试启动 注:base_path路径需要预先创建, 否则报错: error info: No such file or directory 命令执行之后,发现没有任何反应,接着使用命令 可以看到Tracker Server 已经在22122端口监听 4.配置和启动Storage Server 接下来修改storage.conf配置文件 Tracker Server地址: store_path 地址: 注:以上的Tracker Server地址,请设置成服务器对应地址。端口没修改情况下,保持默认。 store_path路径如果不修改,将无法启动Storage Server服务。不会有任何提示,可以打开 /fastdfs/logs 文件夹下的storaged.log文件,查看错误信息。 OK,修改完成之后,启动Storage, 出现上图的情况,说明Tracker Server、Storage Server已经成功启动。 5.测试上传服务 接下来打开client.conf配置文件 当修改完成之后,试试能否上传文件,刚好目录有一张图片 使用命令将图片上传 /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时候将 ./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目录内 既然找到了文件位置,那么进入到 操作完成之后,打开刚刚拷贝的mod_fastdfs.conf 配置文件 vim mod_fastdfs.conf ,分别tracker_server、url_have_group_name、store_path0三个属性的参数 tracker_server: url_have_group_name: 注:因为访问的地址中包含了组名group1,如果生成的地址中不包含组名,可以不用设置。 store_path0: 修改完成之后,进入 经过配置后,已经能够成功的访问FastDFS存储的文件。 总结 以上所述是小编给大家介绍的FastDFS安装和配置整合Nginx-1.13.3的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对极客世界网站的支持! |
请发表评论