1.环境准备
Linux服务器,fastdfs-nginx-module_v1.16.tar.gz,nginx-1.12.2.tar.gz
2.安装fastdfs
1)安装前置依赖
yum -y install gcc
yum -y install gcc-c++
yum -y groupinstall "Development Tools"yum -y groupinstall "Development Tools"
mkdir /var/fastdfs_install_path
cd /var/fastdfs_install_path/
2)下载依赖包
wget https://github.com/happyfish100/libfastcommon/archive/V1.0.35.tar.gz
tar -xavf V1.0.35.tar.gz
cd libfastcommon-1.0.35/
./make.sh
./make.sh install
3)下载fastdfs压缩包
wget https://github.com/happyfish100/fastdfs/archive/V5.10.tar.gz
tar -xzvf V5.10.tar.gz
cd fastdfs-5.10/
./make.sh
./make.sh install
cd conf
cp http.conf anti-steal.jpg mime.types /etc/fdfs/
4)创建目录
mkdir -p /var/lib/fast-dfs/tracker
mkdir -p /var/lib/fast-dfs/storage/{base,path0}
mkdir -p /var/lib/fast-dfs/client
mkdir -p /var/lib/fast-dfs/nginx-module
5)创建配置文件
cp -p /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
cp -p /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
cp -p /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
6)修改配置文件
vi /etc/fdfs/tracker.conf
将
base_path=/home/yuqing/fastdfs
改为
base_path=/var/lib/fast-dfs/tracker
vi /etc/fdfs/storage.conf
将
base_path=/home/yuqing/fastdfs
改为
base_path=/var/lib/fast-dfs/storage/base
将
store_path0=/home/yuqing/fastdfs
改为
store_path0=/var/lib/fast-dfs/storage/path0
将
tracker_server=192.168.209.121:22122
改为
tracker_server=X.X.X.69:22122
vi /etc/fdfs/client.conf
将
base_path=/home/yuqing/fastdfs
改为
base_path=/var/lib/fast-dfs/client
将
tracker_server=192.168.0.197:22122
改为
tracker_server=X.X.X.69:22122
7)启动
启动Tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
启动storage
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
在当前目录下创建一个文件1.txt,内容随意,使用以下命令测试上传
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf 1.txt
如果控制台返回形如group2/M00/00/00/wKiMCll-lSmAGosFAAAAIVlqMa4541.txt的字符串代表上传成功,功能正常运行。
8)设置开机自启动
vi /etc/rc.d/rc.local
追加如下内容
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
开启防护墙
vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22122 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 23000 -j ACCEPT
service iptables restart
3.fastsfs+nginx实现图片预览
1)首先上传压缩包到root的跟目录下
tar -zxvf fastdfs-nginx-module_v1.16.tar.gz
cd fastdfs-nginx-module/src
vi conf
将CORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/"
修改为:
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"
其实就是将local去掉
2)安装nginx需要的包
yum install gcc gcc-c++ make automake autoconf libtool pcre* zlib openssl openssl-devel
3)解压nginx
tar -zxvf nginx-1.12.2.tar.gz
cd nginx-1.12.2
./configure --add-module=/root/fastdfs-nginx-module/src
make && make install
4)复制mod_fastdfs.conf
cp /root/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
vi /etc/fdfs/mod_fastdfs.conf
修改如下内容,其中ip01改为fast服务器的ip:
tracker_server=ip01:22122
storage_server_port=23000
group_name=group1
url_have_group_name = true
store_path0=/var/lib/fast-dfs/storage/path0
5)建立软连接
cd /var/lib/fast-dfs/storage/path0/data/
ln -s /var/lib/fast-dfs/storage/path0/data/ /var/lib/fast-dfs/storage/path0/data/M00
6)将libfdfsclient.so拷贝至/usr/lib下
cp /usr/lib64/libfdfsclient.so /usr/lib/
7)修改nginx配置
cd /usr/local/nginx/conf
vi nginx.conf
添加如下配置:
server {
listen 8888;
server_name localhost;
location ~/group([0-9])/M00 {
ngx_fastdfs_module;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
8)开启8888端口
vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8888 -j ACCEPT
service iptables restart
9)启动nginx
/usr/local/nginx/sbin/nginx (重启 Nginx 的命令为:/usr/local/nginx/sbin/nginx -s reload)
10)测试安装是否成功
在浏览器中输入地址:
http:ip:8888/group2/M00/00/00/wKiMCll-lSmAGosFAAAAIVlqMa4541.txt
能显示文件里面的内容就是搭建成功了