FastDFS 安裝

語言: CN / TW / HK

準備

FastDFS基於C語言開發,安裝FastDFS需要先將源碼進行編譯,編譯依賴gcc環境

yum install -y gcc gcc-c++

FastDFS依賴libevent庫,需要安裝

yum -y install libevent

FastDFS安裝包

https://github.com/happyfish100/fastdfs/archive/V5.11.tar.gz

libfastcommon安裝包

https://github.com/happyfish100/libfastcommon/archive/V1.0.39.tar.gz

下載解壓到 /opt/fastdfs

tar -zxvf **.tar.gz

進入對應文件目錄

cd /opt/fastdfs/libfastcommon-1.0.39/
cd /opt/fastdfs/fastdfs-5.11

編譯安裝

# 編譯
./make.sh
# 安裝
./make.sh install
# 如果 /usr/lib 沒有libfastcommon.so 文件則需要手動拷貝過去
cp /usr/lib64/libfastcommon.so /usr/lib

安裝完成 在/etc/fdfs目錄

# 將目錄下的複製 .sample 文件 成.conf
cp tracker.conf.sample tracker.conf
cp storage.conf.sample storage.conf
cp client.conf.sample client.conf

創建文件目錄

mkdir -p /data/fastdfs
mkdir -p /data/fastdfs/storage

修改配置路徑

vim tracker.conf
vim storage.conf
vim client.conf

文件修改內容

#tracker.conf
base_path=/data/fastdfs
store_path0=/data/fastdfs

#storage.conf
base_path=/data/fastdfs
store_path0=/data/fastdfs
tracker_server=本機PI:22122

#client.conf
base_path=/data/fastdfs/storage
store_path0=/data/fastdfs/storage
tracker_server=本機PI:22122

啟動tracker

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

啟動 storage

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

查看一下監聽端口:

netstat -unltp | grep fdfs

測試上傳 /home/test.jpg 文件 會輸出訪問地址

/usr/bin/fdfs_test /etc/fdfs/client.conf upload /home/test.jpg

nginx代理模塊

https://github.com/happyfish100/fastdfs-nginx-module/archive/V1.20.tar.gz

在/opt/fastdfs 目錄下

tar -zxvf V1.20.tar.gz

將fastdfs-nginx-module移動到/usr/local目錄

mv fastdfs-nginx-module* /usr/local/

到/usr/local/fastdfs-nginx-module/src 目錄下

# 修改conf 文件
ngx_module_incs="/usr/local/include"  # 舊值
ngx_module_incs="/usr/include/fastdfs /usr/include/fastcommon/" # 新值

CORE_INCS="$CORE_INCS /usr/local/include" # 舊值
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/" # 新值
# 將FastDFS-nginx-module/src下的mod_FastDFS.conf拷貝至/etc/fdfs/下
cp mod_fastdfs.conf /etc/fdfs/

修改mod_FastDFS.conf的內容

vim /etc/fdfs/mod_fastdfs.conf
base_path=/data/fastdfs
tracker_server= 本機IP:22122
store_path0=/data/fastdfs/storage
url_have_group_name=true

進入fastdfs源碼目錄 將該子目錄中的http.conf、mime.types拷貝到/etc/fdfs

cd /opt/fastdfs-5.11/conf/
cp http.conf /etc/fdfs
cp mime.types /etc/fdfs

nginx 安裝包

https://nginx.org/download/nginx-1.8.1.tar.gz

安裝nginx 需要安裝相關組件

yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel

創建nginx所需安裝目錄

mkdir -p /var/temp/nginx/client

進入/opt/nginx 執行如下配置命令 注意 /usr/local/fastdfs-nginx-module/src

./configure \
--prefix=/usr/local/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 \
--with-http_gzip_static_module \
--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 \
--add-module=/usr/local/fastdfs-nginx-module/src

安裝

#編譯
make
#安裝
make install

修改nginx 配置文件 /usr/local/nginx/conf/nginx.conf 添加配置

	location /group1/M00/{
	  ngx_fastdfs_module;
	}

創建日誌目錄

mkdir -p /usr/local/nginx/logs

啟動

# 啟動nginx

cd /usr/local/nginx/sbin
./nginx -s reload

完成看日誌