linux中FastDFS服务器的搭建(保姆级个人总结)

一、准备资源

准备好下图中资源包

如果没有可以去此下载

https://codeload.github.com/happyfish100/libfastcommon/tar.gz/V1.0.43
https://codeload.github.com/happyfish100/fastdfs/tar.gz/V6.06
https://codeload.github.com/happyfish100/fastdfs-nginx-module/tar.gz/V1.22

http://nginx.org/en/download.html

或者在linux中使用yum命令进行安装。

把准备好的安装包上传到linux中 例如:/usr/local/src

1.安装依赖

yum -y install gcc-c++
yum -y install libevent
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel

二、安装libfastcommon(FastDFS依赖程序)

1.进入到/usr/local/src路径下解压安装包

  1. cd /usr/local/src
  2. tar -zxf libfastcommonV1.0.7.tar.gz

2.进入到解压后的目录下编译安装

  1. cd libfastcommon-1.0.7
  2. ./make.sh
  3. ./make.sh install

3.由于fastdfs把创建的libfastcommon.so放到了lib64目录下面,但是系统扫描是去lib目录下面,所以把文件拷贝到lib目录下

  1. cp /usr/lib64/libfastcommon.so /usr/lib

4.创建数据存储目录

  1. mkdir -p /usr/local/FastDFS/tracker //可以自定义
  2. mkdir -p /usr/local/FastDFS/storage //可以自定义
  3. mkdir -p /usr/local/FastDFS/client //可以自定义

可以看到创建的目录下有client,storage,tracker三个目录(这里我已经安装过了,所以有别的目录和文件)

 三、安装FastDFS

1.解压

  1. cd /usr/local/src
  2. tar -zxf FastDFS_v5.05.tar.gz

2.进入目录,编译 安装

  1. cd FastDFS
  2. ./make.sh
  3. ./make.sh install

3.把解压目录下的conf目录下的文件全部cp到/etc/fdfs里面

  1. cd conf
  2. cp * /etc/fdfs

4.进入/etc/fdfs目录,修改tracker.conf文件

  1. vi /etc/fdfs/tracker.conf
//找到basebase_path=你上面创建的数据存储目录(我这里是/usr/local/FastDFS/tracker)
base_path=/usr/local/FastDFS/tracker

 5.启动tracker

  1. /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf

6.进入/etc/fdfs目录,修改storage.conf文件

  1. vi /etc/fdfs/storage.conf
//找到base_path
base_path=你上面创建的数据存储目录(我这里是/usr/local/FastDFS/storage)
//找到base_path0
store_path0=这里是默认的存储路径自定义(我这里是/usr/local/FastDFS/storage)
//找到tracker_server
tracker_server=你的服务器的ip:22122

7.启动storage

  1. /usr/bin/fdfs_storaged /etc/fdfs/storage.conf

8.配置测试

从编译完的FastDFS目录复制libfdfsclient.so 到/usr/lib目录

  1. cd /usr/local/src/FastDFS/client
  2. cp libfdfsclient.so /usr/lib

9.修改测试配置文件

  1. vi /etc/fdfs/client.conf
//找到base_path
base_path=你上面创建的数据存储目录(我这里是/usr/local/FastDFS/client)

tracker_server=你的服务器的ip:22122

四、测试上传

注意:先关闭防火墙再测试

测试:

     例如将/home下的a.png上传到服务则有:

  1. /usr/bin/fdfs_test /etc/fdfs/client.conf upload /home/a.png
/usr/bin/fdfs_test /etc/fdfs/client.conf upload 要上传的文件路径

上传成功会返回你上传文件的访问路径
比如:http://服务器IP/group1/M00/00/00/wKhMeGNL3ROAR2GaABDQ7Qx13Gk393_big.png

此时浏览器还无法访问返回的这个链接,这里我们使用nginx进行代理

五、安装fastdfs-nginx-module插件(nginx和fastdfs的桥梁插件模块)

1.依赖的安装(前面已经安装过,如果没安装请安装一下)

  1. yum install -y gcc-c++
  2. yum install -y pcre pcre-devel
  3. yum install -y zlib zlib-devel
  4. yum install -y openssl openssl-devel

2.解压fastdfs-nginx-module

  1. cd /usr/local/src
  2. tar -zxf fastdfs-nginx-module_v1.16.tar.gz

3.进入解压后的目录fastdfs-nginx-module/src/,修改配置config文件,将所有的/local去掉

把CORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/"
修改为:CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"

把CORE_LIBS="$CORE_LIBS -L/usr/local/lib -lfastcommon -lfdfsclient"
修改为:CORE_LIBS="$CORE_LIBS -L/usr/lib -lfastcommon -lfdfsclient"

 4.复制fastdfs-nginx-module/src/mod_fastdfs.conf 到/etc/fdfs目录下

  1. cp mod_fastdfs.conf /etc/fdfs

5.在/etc/fdfs目录下修改mod_dastdfs.conf文件

  1. vim /etc/fdfs/mod_fastdfs.conf
//找到tracker_server
tracker_server=你的服务器IP:22122

storage_server_port=23000
group_name=group1

//找到url_have_group_name
url_have_group_name = true
//找到store_path0
store_path0=你上面设置的默认数据存储目录(我这里是/usr/local/FastDFS/storage)

六、nginx安装(用于做文件请求http代理服务器)

1.解压nginx并进入nginx目录

  1. cd /usr/local/src
  2. tar -zxf nginx-1.8.0.tar.gz
  3. cd nginx-1.8.0

2、如果已经安装了nginx

//找到已安装的nginx源码包,进入文件夹
1.配置了ssl的配置方法:
./configure --prefix=/usr/local/nginx --with-http_ssl_module --add-module=/usr/local/src/fastdfs-nginx-module/src/(后面的"="号后面路径是你的插件安装地址)

2.没有配置ssl的配置方法:./configure --add-module=/usr/local/src/fastdfs-nginx-module/src/("="号后面路径是你的插件安装地址)
 
编译和安装(注意一定不要make install)
make //编译
cp ./objs/nginx /usr/local/nginx/sbin/     把编译后的nginx替换你安装的nginx

3.如果没有安装nginx

①.进入/usr/local/src路径下解压安装包

  1. cd /usr/local/src
  2. tar -zxf nginx-1.8.0.tar.gz

②.进入解压后的目录文件,执行第2步中已安装nginx未配置ssl的步骤

  1. cd nginx-1.8.0
  2. ./configure --add-module=/usr/local/src/fastdfs-nginx-module/src/

③.编译 安装

  1. make && make install

④.安装好的nginx目录应该在/usr/local目录下面


4.最后,配置nginx.conf文件

  1. vim /usr/local/nginx/conf/nginx.conf
server {
        listen       8088;//如果没有改过端口号,默认是80端口
        server_name  localhost;

        location /group1/M00/{
            ngx_fastdfs_module;
        }

        location / {
            root   html;
            index  index.html index.htm;
        }
        
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
}

5.进入sbin中重启nginx服务

  1. cd /usr/local/nginx/sbin/
  2. ./nginx

启动nginx如果遇到提示

 像这种情况,是端口被占用了,有两种方法,一种是更换nginx端口号,一种是关闭占用端口的进程

①.更改端口号在/usr/local/nginx/conf/下的nginx.conf文件中更改(参照六.4)

②.查找占用端口的进程(我这里是8088端口被占用)

  1. fuser -n tcp 8088

 ③.关掉相应进程后启动nginx就好了

  1.  kill -9 5725 5726
  2. cd /usr/local/nginx/sbin/
  3. ./nginx

七、最后浏览器访问测试

关闭防火墙测试

  1. systemctl stop firewalld

使用浏览器打开之前返回的网址,便可以看到上传到服务器的图片了

 如果忘记了地址,可以再次执行第四步后浏览器打开返回的网址。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值