一、下载安装包
(1)下载 libfastcommon
https://github.com/happyfish100/libfastcommon/releases
wget https://github.com/happyfish100/libfastcommon/releases/tag/V1.0.39
(2)下载FastDFS
https://github.com/happyfish100/libfastcommon/releases
wget https://github.com/happyfish100/fastdfs/releases/tag/V5.11
(3)下载FastDFS的Nginx模块
https://github.com/happyfish100/fastdfs-nginx-module/releases
wget https://github.com/happyfish100/fastdfs-nginx-module/archive/V1.20.tar.gz
(4)下载Nginx
https://github.com/nginx/nginx/releases
wget http://nginx.org/download/nginx-1.15.6.tar.gz
下载结果:
二、安装
(1)安装依赖
yum -y install zlib zlib-devel pcre pcre-devel gcc gcc-c++ openssl openssl-devel libevent libevent-devel perl unzip net-tools wget vim
(2)安装与编译libfastcommon
解压
进入解压目录
安装
拷贝 libfastcommon.so 文件至 /usr/lib 目录(新版本不需要此步)
cp /usr/lib64/libfastcommon.so /usr/lib/
注:
libfastcommon安装好后会自动将库文件拷贝至/usr/lib64下,由于FastDFS程序引用usr/lib目录,所以需要将/usr/lib64下的库文件拷贝至/usr/lib下
(3)安装 FastDFS
解压
进入解压目录
安装
拷贝/root/opt/fastdfs-5.11/conf目录下的文件到/etc/fdfs目录下
(4)tracker server配置
vim /etc/fdfs/tracker.conf
修改内容如下 :
创建tracker服务器上面的目录
(5)storage server配置
vim /etc/fdfs/storage.conf
修改内容如下 :
说明:
#指定storage的组名
group_name=group1
#日志与数据路径
base_path=/zhuzq/server/fastdfs/storage
#M00虚拟磁盘路径
store_path0=/zhuzq/server/fastdfs/storage
#配置tracker服务器IP和端口
tracker_server=39.97.176.160:22122其中39.97.176.160是外网ip
创建storage服务器上面的目录
(6)安装FastDFS的Nginx模块
解压
进入解压目录
修改config
内容如下(其中第6行和第15行要进行修改):
ngx_addon_name=ngx_http_fastdfs_module
if test -n "${ngx_module_link}"; then
ngx_module_type=HTTP
ngx_module_name=$ngx_addon_name
ngx_module_incs="/usr/include/fastdfs /usr/include/fastcommon/"
ngx_module_libs="-lfastcommon -lfdfsclient"
ngx_module_srcs="$ngx_addon_dir/ngx_http_fastdfs_module.c"
ngx_module_deps=
CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64 -DFDFS_OUTPUT_CHUNK_SIZE='256*1024' -DFDFS_MOD_CONF_FILENAME='\"/etc/fdfs/mod_fastdfs.conf\"'"
. auto/module
else
HTTP_MODULES="$HTTP_MODULES ngx_http_fastdfs_module"
NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_fastdfs_module.c"
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"
CORE_LIBS="$CORE_LIBS -lfastcommon -lfdfsclient"
CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64 -DFDFS_OUTPUT_CHUNK_SIZE='256*1024' -DFDFS_MOD_CONF_FILENAME='\"/etc/fdfs/mod_fastdfs.conf\"'"
fi
拷贝mod_fastdfs.conf
将fastdfs-nginx-module-1.20/src/mod_fastdfs.conf
拷贝至/etc/fdfs/
修改mod_fastdfs.conf
(7)安装Nginx
解压
进入解压目录
编译与安装
./configure \
--prefix=/zhuzq/servier/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--with-http_ssl_module \
--with-http_gzip_static_module \
--add-module=/opt/apps/fastDFS/fastdfs-nginx-module-1.20/src
注意:
prefix=/zhuzq/servier/nginx中的/zhuzq/servier/nginx指的是要安装的nginx的路径
add-module=/opt/apps/fastDFS/fastdfs-nginx-module-1.20/src中的路径指的是fastdfs-nginx-module模块的解压缩路径
创建目录
mkdir /zhuzq/servier -p
mkdir /var/temp/nginx -p
安装
make & make install
修改nginx.conf 配置
vim /zhuzq/servier/nginx/conf/nginx.conf
location ~/group1/M00 {
ngx_fastdfs_module;
}
三、启动
(1)启动tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
(2)启动storage
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
(3)启动Nginx
/zhuzq/servier/nginx/sbin/nginx
四、测试
(1)修改测试配置
说明172.17.56.175是内网ip
(2)执行上传图片
进入/etc/fdfs目录执行图片上传
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /etc/fdfs/anti-steal.jpg