第一步:把fastDFS都上传到linux系统。
第二步:安装FastDFS之前,先安装libevent工具包。
yum -y install libevent
第三步:安装libfastcommon工具包。
1、解压缩
2、./make.sh
3、./make.shinstall
4、把/usr/lib64/libfastcommon.so文件向/usr/lib/下复制一份
第四步:安装Tracker服务。
1、解压缩FastDFS_v5.05.tar.gz
2、./make.sh
3、./make.shinstall
安装后在/usr/bin/目录下有以fdfs开头的文件都是编译出来的。
配置文件都放到/etc/fdfs文件夹
4、把/root/FastDFS/conf目录下的所有的配置文件都复制到/etc/fdfs下。
5、配置tracker服务。修改/etc/fdfs/tracker.conf文件。
6、启动tracker。/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
重启使用命令:/usr/bin/fdfs_trackerd/etc/fdfs/tracker.conf restart
第五步:安装storage服务。
1、如果是在不同的服务器安装,第四步的1~4需要重新执行。
2、配置storage服务。修改/root/FastDFS/conf/storage.conf文件
3、启动storage服务。
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
第六步:测试服务。
1、修改配置文件/etc/fdfs/client.conf
2、测试
/usr/bin/fdfs_test/etc/fdfs/client.conf upload anti-steal.jpg
第七步:搭建nginx提供http服务。
可以使用官方提供的nginx插件。要使用nginx插件需要重新编译。
fastdfs-nginx-module_v1.16.tar.gz
1、解压插件压缩包
2、修改/root/fastdfs-nginx-module/src/config文件,把其中的local去掉。
3、解压nginx-1.6.2.tar.gz,对nginx重新config可参考另一片文章http://blog.youkuaiyun.com/haozhishang/article/details/52390305
./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=/root/fastdfs-nginx-module/src
4、make
5、make install
6、把/root/fastdfs-nginx-module/src/mod_fastdfs.conf文件复制到/etc/fdfs目录下。编辑:
7、nginx的配置
在nginx的配置文件中添加一个Server:
server {
listen 8012;
server_name 192.168.220.133;
location /group1/M00/{
ngx_fastdfs_module;
}
}
8、将libfdfsclient.so拷贝至/usr/lib下
cp /usr/lib64/libfdfsclient.so /usr/lib/
9、启动nginx
输入上边测试上传图片后出现的url复制就可以在浏览器上访问了(我的端口改成8012,记得改下端口)
java:
导入fastdfs_client_v1.24.jar包
public class Fast {
/*
* 1、初始化全局配置。加载一个配置文件。
* 我的是client.conf里面的内容是tracker_server=192.168.206.133:22122(<span style="color:#ff0000;">这个ip是trackerIP就是在配置文件里经常配置的IP,里一个端口就不多说了</span>)
* */
public static void main(String[] args) throws Exception {
ClientGlobal.init("D:/project/Java6/src/client/client.conf");
//2.创建一个TrackerClient对象
TrackerClient trackerClient=new TrackerClient();
//3.创建一个TrackerServer对象
TrackerServer trackerServer=trackerClient.getConnection();
//4.声明一个StorageServer对象,为null
StorageServer storageServer=null;
//5.获得StorageClient对象
StorageClient storageClient=new StorageClient(trackerServer, storageServer);
//6.直接调用StorageClient对象方法上传文件即可。
String[] strs=storageClient.upload_file("C:/Users/WLSQ28/Desktop/d730ffebd2fefd6f906fc612a0c4f5ea.jpg", "jpg", null);
//7.可以打印出文件的地址,可以拼成URL访问
for(String str:strs){
System.out.println(str);
}
}
}