zoukankan      html  css  js  c++  java
  • FastDFS和apache/nginx整合

    因为FastDFS默认自带的http服务器性能不好, 所以一般建议用外置的apache或者nginx 来解决http下载,以应付大并发的情况 注意nginx扩展模块只支持GET和HEAD模式获取文件,需要开发那边配合修改程序
    获取nginx和FastDFS的nginx扩展插件
    wget http://fastdfs-nginx-module.googlecode.com/files/fastdfs-nginx-module_v1.13.tar.gz 

    wget http://nginx.org/download/nginx-1.2.6.tar.gz
    解压并编译安装

      备注:如果之前机器上安装了nginx,可以单独安装fastdfs-nginx-module模块,具体方法请参考:如何单独添加NGINX自定义模块

    apt-get install libssl-dev zlib1g-dev libpcre3-dev 

    tar zvxf nginx-1.2.6.tar.gz 

    tar zvxf fastdfs-nginx-module_v1.13.tar.gz

    cd nginx-1.2.6 

    ./configure --prefix=/usr/local/nginx --with-http_gzip_static_module --add-module=/www/soft/fastdfs-nginx-module/src/
    make 

    make install


    修改相关配置文件

    1.修改FastDFS的storage.conf 

    http.disabled=true 

    #关闭内置web server 其它保持不变,保存退出

    2.修改nginx扩展模块的配置文件
      cd ../fastdfs-nginx-module/src

    cp mod_fastdfs.conf /etc/fdfs/ 

    vi /etc/fdfs/mod_fastdfs.conf 

    base_path=/www/logs 

    #存放log的路径 

    tracker_server=127.0.0.1:22122 

    #指定tracker服务器及端口 

    url_have_group_name = true 

    #这个很重要,在URL中包含group名称

    store_path0=/www/geebook_storage 

    #存储文件的路径 

    storage_server_port=23000 

    #与storage的配置端口保持一致 

    保存后退出 

    3.做M00的链接

    ln -s /www/geebook_storage/data  /www/geebook_storage/data/M00 

    4.修改nginx的配置文件

    备注:如果nginx有其他服务器在用,在nginx.conf原有的基础上追加一个下面server的配置即可

     vi /usr/local/nginx/conf/nginx.conf 

    server { 

      listen 8888;
      location / { 

        root /www/geebook_storage/data; 

        index index.html index.htm;

       } 

      location /group1/M00 {

         root /www/geebook_storage/data; 

        ngx_fastdfs_module; 

      }

     }

    5.重启相关服务,验证整合是否成功

    先重启storage服务:

     /etc/init.d/fdfs_storaged start 

    然后再启动nginx,

    注意顺序,否则会报端口占用的错误

     /usr/local/nginx/sbin/nginx 

    查看端口使用情况:
    netstat -lnp --tcp
    tcp 0 0 0.0.0.0:23000 0.0.0.0:* LISTEN 1761/fdfs_storaged 

    tcp 0 0 0.0.0.0:8888 0.0.0.0:* LISTEN 1718/nginx 

    tcp 0 0 0.0.0.0:8090 0.0.0.0:* LISTEN 1809/fdfs_trackerd

     tcp 0 0 0.0.0.0:22122 0.0.0.0:* LISTEN 1809/fdfs_trackerd


    默认的8888端口本来是storage的,现在被nginx替代 完成了FastDFS和nginx的整合 用上面的fdfs_test程序测试上传和下载,能正常访问下载,说明nginx已经顺利替代 FastDFS的内置Web server

  • 相关阅读:
    vs c++配置opencv(1)
    vs2013搭建团队版本控制 TFS、SVN
    robomongo
    Node log4js
    node.async.auto
    p2.js物理引擎学习
    pomelo
    Node.mongoose
    Node.Buffer
    Node安装及搭建简单HTTP服务器
  • 原文地址:https://www.cnblogs.com/breg/p/3242733.html
Copyright © 2011-2022 走看看