centos7 搭建 FastDFS +Nginx实现动态缩略

【安装步骤】
group1的主机IP为192.168.199.208
group2的主机对应的ip为192.168.199.129
一、安装前准备
1、安装依赖包

yum -y install pcre* pcre-* gcc-c++ gcc* zlib zlib-devel openssl openssl-devel gc-devel gd gd-devel git

2、安装libfastcommon 套件

 git clone https://github.com/happyfish100/libfastcommon.git
 cd libfastcommon
 ./make.sh && ./make.sh install     //安装在当前目录

3、建立链接

ln -s /usr/lib64/libfastcommon.so /usr/lib/
ln -s /usr/lib64/libfastcommon.so /usr/local/lib/
ln -s /usr/lib64/libfastcommon.so /usr/local/lib64/
ln -s /usr/lib64/libfdfsclient.so /usr/lib/
ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/
ln -s /usr/lib64/libfdfsclient.so /usr/local/lib64/

二、安装fastdfs
1、解压FastDFS.zip包

unzip FastDFS.zip
cd fastdfs-master      //进入到fastdfs-master目录
./make.sh && ./make.sh install     //安装到当前目录

2、拷贝fastdfs-master中的conf所有文件到 /etc/fdfs/中,完成配置

cp -r /usr/local/src/fastdfs-master/conf/* /etc/fdfs/
cd /etc/fdfs/

3、配置相应的配置文件

//group1的主机配置需求

(1)配置tracker.conf 文件

vim /etc/fdfs/tracker.conf
>>bind_addr=192.168.199.208
    port=22122
    base_path=/data/server/fastdfs
    store_lookup=0
    store_group=group1
    store_server=0
    use_storage_id = true
    id_type_in_filename = id

(2)配置storage_ids.conf文件

vim /etc/fdfs/storage_ids.conf
>>100001   group1  192.168.199.208
  100002   group2  192.168.199.129

(3)配置client.conf 文件

vim /etc/fdfs/client.conf
>>base_path=/data/server/fastdfs_client
  tracker_server=192.168.199.208:22122
  use_storage_id = true

(4)配置storage.conf文件

  vim /etc/fdfs/storage.conf
  >>group_name=group1
    bind_addr=192.168.199.208
    port=23000
    base_path=/data/server/fastdfs_storage
    store_path0=/data/server/fastdfs_storage
    tracker_server=192.168.199.208:22122

(5)创建上面配置文件里涉及的目录

 mkdir /data/server/fastdfs_client
 mkdir /data/server/fastdfs_storage
 mkdir /data/server/fastdfs

 (6)启动
 fdfs_trackerd /etc/fdfs/tracker.conf
 fdfs_storaged /etc/fdfs/storage.conf

//group2的主机配置需求
1、配置storage_ids.conf文件

vim /etc/fdfs/storage_ids.conf
>>100001   group1  192.168.199.208
  100002   group2  192.168.199.129

2、配置storage.conf文件

vim /etc/fdfs/storage.conf
>>group_name=group2
    bind_addr=192.168.199.208
    port=23000
    base_path=/data/server/fastdfs_storage
    store_path0=/data/server/fastdfs_storage
    tracker_server=192.168.199.208:22122

3、创建目录

 mkdir /data/server/fastdfs_storage
4、启动

 fdfs_storaged /etc/fdfs/storage.conf


1、安装nginx插件

tar zxvf fastdfs-nginx-module_v1.15.tar.gz
  vim /usr/local/src/fastdfs-nginx-module/src/config
  >>CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"   //修改这条语句,去掉/local

2、解压nginx-1.15.0.tar.gz,进行安装。

tar zxf nginx-1.15.0.tar.gz
cd nginx-1.15.0

./configure --prefix=/data/server/nginx --add-module=/usr/local/src/fastdfs-nginx-module/src --with-http_gunzip_module --with-pcre --with-http_image_filter_module --with-http_stub_status_module
 //编译
make && make install    //进行安装

3、配置nginx配置文件

vim /data/server/nginx/conf/nginx.conf   //在server的函数下编录以后语句
>>location ~* /group1/M00/(\w+)/(\w+)/(.+)_(\d+)x(\d+)\.(png|jpg|gif) {
               root "/data/server/nginx/html/";
                              ngx_fastdfs_module;
                              set $iw "$4";
                              set $ih "$5";
                              image_filter resize $iw $ih;
                              image_filter_buffer 2M;
                             try_files /group1/M00/$1/$2/$3.$6 /404.html;
        }
        location /group1/M00 {
                root "/date/server/nginx/html/";
                ngx_fastdfs_module;
        }
        location = /favicon.ico {
                log_not_found off;
                access_log off;
        }    

>>location ~* /group2/M00/(\w+)/(\w+)/(.+)_(\d+)x(\d+)\.(png|jpg|gif) {
               root "/data/server/nginx/html/";
                              ngx_fastdfs_module;
                              set $iw "$4";
                              set $ih "$5";
                              image_filter resize $iw $ih;
                              image_filter_buffer 2M;
                             try_files /group2/M00/$1/$2/$3.$6 /404.html;
        }
        location /group2/M00 {
                root "/date/server/nginx/html/";
                ngx_fastdfs_module;
        }
        location = /favicon.ico {
                log_not_found off;
                access_log off;
        }    
/data/server/nginx/sbin/nginx -t //启动nginx服务

四、配置mod_fastdfs.conf文件
mkdir /data/server/nginx/html/group1/
ln -s /data/server/fastdfs_storage/data /data/server/nginx/html/group1/M00
//注意:“/data/server/fastdfs_storage/data”后面不加“/”

cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
vim /etc/fdfs/mod_fastdfs.conf     
 //配置group1
>>use_storage_id = true
    tracker_server=192.168.199.208:22122
    url_have_group_name = true
    group_name=group1
    store_path0=/data/server/fastdfs_storage
    [group1]
    group_name=group1
    storage_server_port=23000
    store_path_count=1
    store_path0=/data/server/fastdfs_storage

//配置group2
vim /etc/fdfs/mod_fastdfs.conf
>>use_storage_id = true
    tracker_server=192.168.199.208:22122
    url_have_group_name = true
    group_name=group2
    store_path0=/data/server/fastdfs_storage
    [group2]
    group_name=group2
    storage_server_port=23000
    store_path_count=2
    store_path0=/data/server/fastdfs_storage

【安装后结果】
测试图片是否上传

fdfs_upload_file /etc/fdfs/client.conf /etc/fdfs/anti-steal.jpg

猜你喜欢

转载自blog.csdn.net/qq389674856/article/details/83217856