zoukankan      html  css  js  c++  java
  • 搭建fastfds+nginx

     

    一、下载相关安装包

    1. libfastcommon-master.zip

    wget https://codeload.github.com/happyfish100/libfastcommon/zip/master

    mv master libfastcommon-master.zip

    1. fastdfs-master.zip

    wget https://codeload.github.com/happyfish100/fastdfs/zip/master

    mv master fastdfs-master.zip

    二、安装libfastcommon

    unzip libfastcommon-master.zip

    cd libfastcommon-master/

    ./make.sh

    ./make.sh install

    三、安装fastdfs

    unzip fastdfs-master.zip

    cd fastdfs-master/

    ./make.sh

    ./make.sh install

    安装完成后,/etc/fdfs目录自动生成

    cd /etc/fdfs/

    mv client.conf.sample client.conf

    mv storage.conf.sample storage.conf

    mv tracker.conf.sample tracker.conf

    1.配置tracker

    mkdir /data/fdfs/tracker#用于存储Tracker的数据文件和日志文件等

    vim tracker.conf

    port=22122#tarcker的监听端口

    base_path=/data/fdfs/tracker #Tracker的数据文件和日志文件路径

    store_group=group0#设置组名,要与mod_fastdfs.conf中的group_name的字段名对应

    为启动脚本创建软引用

    ln -s /usr/bin/fdfs_trackerd /usr/local/bin/

    ln -s /usr/bin/stop.sh  /usr/local/bin

    ln -s /usr/bin/restart.sh  /usr/local/bin

    启动tracker服务

    service fdfs_trackerd start

    查看服务监听是否正常,正常情况下是会监听22122端口的

    netstat -auntlp | grep fdfs

    2.配置storage

    mkdir /data/fdfs/storage/ #用于storage存储数据文件和日志等

    vim storage.conf

    group_name=group0#名字需要和mod_fastdfs.conf中的group_name的字段名对应

    port=23000#storage的监听端口

    base_path=/data/fdfs/storage/#storage存放数据文件和日志等

    store_path0=/data/fdfs/storage/

    tracker_server=192.168.209.121:22122#单机不要写127.0.0.1,写内网IP,否则启动报错

    为启动脚本创建软引用

    ln -s /usr/bin/fdfs_storaged /usr/local/bin/

    启动storage服务

    service fdfs_storaged start

    查看服务监听是否正常,正常情况下是会监听23000端口的

    netstat -auntlp | grep fdfs

    此时trackerstorage都已启动成功

    四、编译nginx

    1.下载nginx源码包 

    wget http://nginx.org/download/nginx-1.9.11.tar.gz

    2.下载fastdfs-nginx-module

    wget https://github.com/happyfish100/fastdfs-nginx-module/archive/master.zip

    3.解压并编译

    unzip master.zip#解压fastdfs-nginx-module

    tar -xvf nginx-1.9.11.tar.gz#解压nginx源码包

    cd nginx-1.9.11/ #进入nginx目录

     ./configure --prefix=/usr/local/nginx-1.9.11 --add-module=/opt/nginx-fastdfs/fastdfs-nginx-module-master/src  --with-http_ssl_module  --with-stream --user=nginx --group=nginx #预编译,指定编译路径,添加编译模块并指定路径

    make #进行编译

    make install #安装

    编译完成之后会在你指定的/usr/local/nginx-1.9.11位置出现nginx编译生成的文件

    五、配置nginx

    1ln -s /usr/local/nginx-1.9.11/conf/ /etc/nginx#nginx配置创建软连接,便于寻找修改

    2vim /etc/nginx/nginx.conf #添加配置,以便在conf.d下创建单独的配置文件,便于管理

    include conf.d/*.conf; #在最后一个”}”前添加

    3、mkdir /etc/nginx/conf.d #创建存放配置文件的目录

    4vim /etc/nginx/conf.d/fastdfs.conf #创建fastdfsnginx配置文件

    server{

           listen            8089;

           #server_name       localhost;

           access_log  /var/log/nginx/8089.access.log;

           error_log  /var/log/nginx/8089.error.log;

           location ~* /.(html|htm|jsp|php|js)$ {

               deny all;

           }

           location /group0/M00{

               root /data/fdfs/storage;

               ngx_fastdfs_module;

           }

            location = /favicon.ico {

            log_not_found off;

            access_log off;

        }

    }

    5、因为fastdfs的访问链接是以http://IP:8089/group0/M00/XX/XX/XX.png格式进行访问的,所以我们要创建M00的软连接

    ln -s /data/fdfs/storage/data/ /data/fdfs/group0/M00

    6、fastdfs-masterconf 目录中的anti-steal.jpg  http.conf  mime.types拷贝到/etc/fdfs/目录下

    cp  anti-steal.jpg  http.conf  mime.types  /etc/fdfs/

    7、fastdfs-nginx-module-master/src下的mod_fastdfs.conf拷贝到/etc/fdfs/并且配置,配置完成后,重启fastdfs服务

    cp mod_fastdfs.conf /etc/fdfs/

    vim /etc/fdfs/mod_fastdfs.conf

    base_path=/data/fdfs/storage/

    tracker_server=ip:22122##内网IP

    group_name=group0

    url_have_group_name = true

    [group0]

    group_name=group0

    storage_server_port=23000

    store_path_count=1

    store_path0=/data/fdfs/storage

    service fdfs_storaged restart

    service fdfs_trackerd restart

    8、到此nginx基本配置完成,启动nginx

    ln -s /usr/local/nginx-1.9.11/sbin/nginx /usr/bin/ #nginx命令创建一个软连接,便于nginx的启动

    nginx #启动nginx服务

    netstat -auntlp | grep nginx #查看nginx 端口监听情况

    !!!在这里,很有可能会出现一个问题,就是配置没有问题nginx -t可以通过,服务也启动的起来,但是访问nginx就是没有返回,这个时候强烈建议将fastdfs检查一遍,很有可能就是因为fastdfs没有配置好造成的

    9、如果访问图片出现400错误,但在配置文件中去掉ngx_fastdfs_module;”又正常访问但话,是因为fastdfs没配置好,或者fastdfsmod_fastdfs.conf配置文件中的“url_have_group_name” 字段没有配置好,默认是false,我们需要将其改成true

  • 相关阅读:
    DWR组件——基于远程过程调用实现Ajax
    JSTL学习笔记
    EL表达式学习笔记
    JavaScript学习笔记
    原生Ajax使用教程
    Response的返回内容类型
    Tomcat上文件的绝对路径访问笔记
    JSON语言规范与Java中两种解析工具基本使用
    Java生成XML文件与XML文件的写入
    编码问题笔记
  • 原文地址:https://www.cnblogs.com/Christine-ting/p/10998934.html
Copyright © 2011-2022 走看看