离线安装包准备:
将相关的安装包上传到 /usr/local 目录,安装包下载
并解压到当前目录
1.安装 gcc
yum install -y gcc gcc-c++
2.安装 perl
yum install -y perl
3.安装 libevent
yum install -y libevent
4.安装 libfastcommon
libfastcommon 没有 yum 源,通过上传的安装包进行编译与安装
cd /usr/local/libfastcommon-1.0.7/
./make.sh && ./make.sh install
libfastcommon 安装好后会在 /usr/lib64 目录下生成 libfastcommon.so 库文件
由于 FastDFS 程序引用 usr/lib 目录所以需要将 /usr/lib64 下的库文件拷贝至 /usr/lib 下
cp /usr/lib64/libfastcommon.so /usr/lib
5.安装 tracker
cd /usr/local/fastdfs-5.05/
./make.sh && ./make.sh install
安装成功将安装目录下的 conf 下的文件拷贝到 /etc/fdfs/ 下
cp conf/* /etc/fdfs/
6.配置和启动 tracker
切换到 /etc/fdfs 目录下
cd /etc/fdfs
修改 tracker.conf
vi tracker.conf
base_path = /home/fastdfs
http.server_port = 80
创建 /home/fastdfs 目录
mkdir -p /home/fastdfs
启动 tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
PS:启动成功后,在 /home/fastdfs/ 目录下生成两个目录, 一个是数据,一个是日志
7.配置和启动 storage
切换到 /etc/fdfs 目录下
cd /etc/fdfs
修改 tracker.conf
vi storage.conf
base_path = /home/fastdfs
store_path0 = /home/fdfs_storage
tracker_server = x.x.x.x:22122 (根据实际情况改)
http.server_port = 88
创建 /home/fdfs_storage 目录
mkdir -p /home/fdfs_storage
启动 storage
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
PS:启动成功后,在 /home/fdfs_storage/data 目录下生成以下显示目录
8.测试FastDFS上传文件
切换到 /etc/fdfs 目录下
cd /etc/fdfs
修改 client.conf
vi client.conf
base_path = /home/fastdfs
tracker_server = x.x.x.x:22122 (根据实际情况改)
拷贝一张图片 test.jpg 到Centos服务器上的 /tmp 目录下
进行上传测试
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /tmp/test.jpg
PS:由于现在还没有和nginx整合无法使用http下载
9.FastDFS 和Nginx整合
切换到 /usr/local/fastdfs-nginx-module/src 目录下
cd /usr/local/fastdfs-nginx-module/src/
修改config文件
vi config
将文件中的所有 /usr/local/ 路径改为 /usr/
复制当前目录下的 mod_fastdfs.conf 文件到 /etc/fdfs/ 目录下
cp mod_fastdfs.conf /etc/fdfs/
切换到 /etc/fdfs 目录,修改 mod_fastdfs.conf 文件
vi mod_fastdfs.conf
base_path=/home/fastdfs
tracker_server=x.x.x.x:22122(根据实际情况改)
url_have_group_name=true #url中包含group名称
store_path0=/home/fdfs_storage #指定文件存储路径(上面配置的store路径)
将 /usr/lib64 目录下的 libfdfsclient.so 文件拷贝至 /usr/lib 目录下
cp /usr/lib64/libfdfsclient.so /usr/lib
10.Nginx 的安装
安装nginx的依赖库:
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
创建 /var/temp/nginx/client 目录
mkdir -p /var/temp/nginx/client
切换到 nginx 解压的目录
cd /usr/local/nginx-1.8.0/
执行以下配置命令:
./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
PS:安装成功后查看生成的目录
创建 /usr/local/nginx/logs 目录
mkdir /usr/local/nginx/logs
切换到 /usr/local/nginx/conf/ 目录
cd /usr/local/nginx/conf/
修改 nginx.conf 文件
vi nginx.conf
切换到 /usr/local/nginx/sbin/ 目录
cd /usr/local/nginx/sbin/
启动 nginx
./nginx
查看 nginx 进程
放通防火墙80(nginx)、22122(tracker)、23000(storage)端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=22122/tcp --permanent
firewall-cmd --zone=public --add-port=23000/tcp --permanent
firewall-cmd --reload
这时已经可以通过浏览器访问刚刚测试上传的图片 test.jpg!
11.FastDFS 和 Nginx 开机自启配置
编辑 /etc/rc.d/rc.local 文件,增加启动项
vi /etc/rc.d/rc.local
# fastdfs start
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
# nginx start
/usr/local/nginx/sbin/nginx
给rc.local 文件增加可执行的权限
chmod +x /etc/rc.d/rc.local