### start from here ## 前置准备依赖c++ : yum -y install libevent libevent-devel perl make gcc zlib zlib-devel pcre pcre-devel gcc-c++ openssl-devel 1.安装libfastcommon wget https://github.com/happyfish100/libfastcommon/archive/V1.0.43.tar.gz mv V1.0.43.tar.gz libfastcommon-1.0.43.tar.gz && tar -xvf libfastcommon-1.0.43.tar.gz cd libfastcommon-1.0.43 && ./make.sh && ./make.sh install 2.安装fastdfs # 注意conf 的mine.types和http.conf 一定要复制过去,其次下载本版本建议6.x不然安装会有兼容问题 wget https://github.com/happyfish100/fastdfs/archive/V6.06.tar.gz mv V6.06.tar.gz fdfs6.06.tar.gz && tar -xvf fdfs6.06.tar.gz cd cd fastdfs-6.06 && ./make.sh && ./make.sh install cp -r conf/* /etc/fdfs && rm -f *.sample . 在$base_path 下新建data 和logs目录(存储trackerd.log 和storaged.log) cd $base_path && mkdir -p data && mkdir logs 3.修改配置 1.修改 vi tracker.conf port=22122 # tracker服务器端口(默认22122,一般不修改) base_path=/etc/fdfs # 存储日志和数据的根目录 2.修改 vi storage.conf port=23000 # storage服务端口(默认23000,一般不修改) base_path=/etc/fdfs # 数据和日志文件存储根目录 store_path0=/etc/fdfs # 第一个存储目录 tracker_server=192.168.110.151:22122 # tracker也就是fdfs服务器IP和端口 http.server_port=8888 # http访问文件的端口(默认8888,看情况修改,和nginx中保持一致) 3.修改 vi client.conf base_path=/etc/fdfs tracker_server=192.168.110.151:22122 #tracker服务器IP和端口 4.启动服务: sh fastfdfs_services.sh 或者使用: /etc/init.d/fdfs_trackerd start/stop/restart /etc/init.d/fdfs_storaged start/stop/restart 6.测试fastfdfs上传服务: /usr/bin/fdfs_test /etc/fdfs/client.conf upload $filename 看到如下类似表示服务ok example file url: http://192.168.110.151/group1/M00/00/00/wKhul1-qhhKAO3ywAAABcxvxSxw5288_big.jpg 7.nginx整合,由于现在还没有和nginx整合无法使用http下载 7.1 安装fastdfs-nginx-module安装fastdfs-nginx-module: wget https://github.com/happyfish100/fastdfs-nginx-module/archive/V1.22.tar.gz cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs 配置nginx moudle: vim /etc/fdfs/mod_fastdfs.conf tracker_server=192.168.0.104:22122 #tracker服务器IP和端口 url_have_group_name=true store_path0=/home/dfs 安装nginx: wget http://nginx.org/download/nginx-1.15.4.tar.gz #下载nginx压缩包 tar -zxvf nginx-1.15.4.tar.gz cd nginx-1.15.4/ ./configure --add-module=/usr/local/src/fastdfs-nginx-module/src/ # 添加fastdfs-nginx-module模块 make && make install 7.2#配置nginx.config touch /usr/local/nginx/logs/nginx.pid && chmod a+w /usr/local/nginx/logs/nginx.pid vim /usr/local/nginx/conf/nginx.conf #添加如下配置 pid /usr/local/nginx/logs/nginx.pid; server { listen 8888; ## 该端口为storage.conf中的http.server_port相同 server_name 192.168.110.151; location ~/group[0-9]/ { ngx_fastdfs_module; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } 8.关闭防火墙: systemctl stop firewalld.service 9.nginx 启动停止 ./nginx -c /usr/local/nginx/conf/nginx.conf # 根据配置启动 /usr/local/nginx/sbin/nginx #启动nginx /usr/local/nginx/sbin/nginx -s reload #重启nginx /usr/local/nginx/sbin/nginx -s stop #停止nginx 10.测试访问: nginx访问 访问:http://192.168.0.104:8888/group1/M00/00/00/wKgAaFyMoNKAUNcVAAWjVxW4v70993.jpg
注意:client.conf是放在django项目里面的linux不用放:如果window存放base_path要写windows路径切记