什么是FastDFS,可以参考这个链接:https://www.imooc.com/article/details/id/66990
不啰嗦,直接进入正文:安装与配置FastDFS环境
由于是自己搞着玩的,除去上班的时间也是搞了好几天,真想骂街!!
如果自己搞着玩的话,建议用我这几个包,点击下载
FastDFS安装
准备工作
新建两个目录
$ sudo mkdir -p /home/dfs-site
$ sudo mkdir -p /home/python/fastdfs
其中dfs-site用来存放安装包,fastdfs用来存储
开始配置安装
1. 干脆一下子该解压的都解压了吧
# 对于 xxx.zip
$ unzip xxx.zip
# 对于 xxx.gz.tar
$ tar -xzvf xxx.gz.tar
2. 安装fastdfs依赖包
进入libfastcommon-master目录
执行以下命令
# sudo ./make.sh
# sudo ./make.sh install
$ sudo make.sh
$ sudo make.sh install
3. 安装fastdfs
进入fastdfs-master目录
执行以下命令
# sudo ./make.sh
# sudo ./make.sh install
$ sudo make.sh
$ sudo make.sh install
4. 设置跟踪服务器tracker
安装完fastdfs后会在/etc/目录下自动生成一个fdfs目录,如下
leyton@leytonyzz:/etc/fdfs$ ls
client.conf.sample tracker.conf.sample
storage.conf.sample storage_ids.conf.sample
把这四个sample文件全部拷贝一份,并去掉.sample
$ sudo cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
其他三个如上命令
在存储目录/home/python/fastdfs/下创建跟踪目录tracker
$ sudo mkdir -p /home/python/fastdfs/tracker
编辑tracker.conf配置文件
$ sudo vi /etc/fdfs/tracker.conf
修改base_path为跟踪目录
base_path=/home/python/fastdfs/tracker
启动跟踪服务器tracker
$ sudo service fdfs_trackerd start
启动成功后tracker目录下会自动生成data与log两个目录
5. 配置存储服务器storage
在fastdfs目录下创建storage目录
$ sudo mkdir -p /home/python/fastdfs/storage
修改配置文件storage.conf
$ sudo vi /etc/fdfs/storage.conf
修改内容如下:
base_path=/home/python/fastdfs/storage
store_path0=/home/python/fastdfs/storage
# tracker_server=自己的ubuntu的ip:22122
tracker_server=192.168.0.103:22122
启动存储服务器storage
$ sudo service fdfs_storaged start
6. 查看服务器的启动状态
7. 测试是否配置成功
使用client.conf来测试上传一个文件,看是否可以上传成功
修改client.conf配置文件
$ sudo vi /etc/fdfs/client.conf
修改的内容如下:
base_path=/home/python/fastdfs/tracker
# tracker_server=自己ubuntu虚拟机的ip地址:22122
tracker_server=192.168.0.103:22122
上传文件
# fdfs_upload_file /etc/fdfs/client.conf 要上传的图片文件路径
$ fdfs_upload_file /etc/fdfs/client.conf ~/桌面/1.jpg
如果上传成功的话,会返回图片的存储路径,如下样式:
group1/M00/00/00/wKgAa12YchOAXO2xAAAOPxGxCmM497.jpg
上传的图片存储在/home/python/fastdfs/storage/data/目录中
说明测试上传成功了,如何在浏览器中也可以看到图片呢?
那就是下边的nginx了
8. 配置nginx服务
进入nginx-1.8.1目录中
添加fdfs-nginx
# sudo ./configure --prefix=/usr/local/nginx/ --add-module=fastdfs-nginx-module-master解压后的目录的绝对路径/src
$ sudo ./configure --prefix=/usr/local/nginx/ --add-module=/home/dfs-site/fastdfs-nginx-module-master/src
执行命令,进行安装
# sudo ./make
# sudo ./make install
$ sudo make
$ sudo make install
将nginx需要用到的文件拷贝到/etc/fdfs目录下
$ sudo cp /home/dfs-site/fastdfs-nginx-module-master/src/mod_fastdfs.conf /etc/fdfs/
$ sudo cp /home/dfs-site/fastdfs-master/conf/http.conf /etc/fdfs/
$ sudo cp /home/dfs-site/fastdfs-master/conf/mime.types /etc/fdfs/
修改mod_fastdfs.conf配置文件
sudo vi /etc/fdfs/mod_fastdfs.conf
要修改的内容如下:
connect_timeout=10
# tracker_server=自己ubuntu虚拟机的ip地址:22122
tracker_server=192.168.0.103:22122
url_have_group_name=true
store_path0=/home/python/fastdfs/storage
9. 修改nginx.conf配置文件
$ sudo vi /usr/local/nginx/conf/nginx.conf
在http中添加server,斜线内的server是要添加的(单个group)
...
http {
...
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
# -------------------------
server {
listen 8888;
server_name localhost;
location ~/group[0-9]/ {
ngx_fastdfs_module;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
# --------------------------
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
}
}
启动nginx
$ sudo /usr/local/nginx/sbin/nginx
打开浏览器,输入地址127.0.0.1:8888/上传文件返回的结果,如下:
http://127.0.0.1:8888/group1/M00/00/00/wKgAa12YchOAXO2xAAAOPxGxCmM497.jpg