FastDFS的HTTP访问


1、nginx上部署fastDFS模块

    第一步,准备工作。安装好nginx并下载fastdfs-nginx-module。

    第二步,进入到nginx的安装目录,输入命令

#./configue --add-module=fastdfs-nginx-module下src目录
./configue --add-module=/home/tx/package/fastdfs-nginx-module/src

     第三步,直接make,这里很有可能会报错

fatal error :fdfs_define.h:No such file or directory
fatal error :common_define.h:No such file or directory

    首先去makefile中添加这个头文件的路径,注意要修改的makefile在objs目录下,找到“-I”,在下面添加头文件路径

    第四步,sudo make install

    这时会发现有两个nginx

    但是启动nginx发现没有worker工作进程,查看nginx中错误log日志,发现在etc/fdfs下没有找到“mod_fastdfs.conf”。找到该文件。并把文件复制到etc/fdfs目录下并修改

  启动nginx还是发现没有worker工作进程,查看nginx中错误log日志,发现在etc/fdfs下没有找到“http.conf”。

  从fastDFS上的安装包中conf下找到http.conf,将它拷贝到etc/fdfs

  从nginx的安装包中conf找到mime.type,将它拷贝到etc/fdfs

  万事俱备。这时我们再启动nginx

 2、修改nginx上的配置文件,添加location

loaction /group1/M00
{
    root  /home/tx/fastDFS/storage/data;
    ngx_fastdfs_module ;
}

  大功告成,重启nginx,通过url访问storage上的文件

  


 

  在实际开发过程中,分布式文件系统只有一个存储结点是不太可能的,大多数情况下会出现fastDFS集群,当有多个storage时,又该如何通过http访问到集群中的某个storage上的某个文件,这时可以通过存储节点的反向代理精确访问。

  

  比如我们要访问一个url http://192.168.31.113/group1/M00/00/00/wKgfbViy2Z2AJ-FTAaM3Asg3Z0782.mp3 客户端的请求发送给了nginx反向代理服务器 ,反向代理服务器不处理请求,转发给存储节点上的nginx服务器 。

  反向代理服务器的配置

server{
     location /group1/M00  
     {
         proxy_pass http://group1.com;  
     }  
      location /group2/M00
      {
          proxy_pass http://group2.com
      }
     loctaion /group3/M00
     {
         proxy_pass http://group3.com
     }
}
upstream group1.com
{
     server 192.168.31.110;
     server 192.168.31.111;
}
upstream group2.com
{ 
     server 192.168.31.112;
     server 192.168.31.113;
}
upstream group3.com
{
     server 192.168.31.114;
     server 192.168.31.115;
}

在某一台storage上的nginx配置

location /group1/M00
{
    root  #storage配置文件中storage_path0中路径+data
    ngx_fastdfs_module;
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM