我的文档绝对可以实现,毕竟我是安装了3遍的人
官网地址
https://github.com/happyfish100
github官网文档地址:https://github.com/happyfish100/fastdfs/wiki
以下是我自己总结的
1 准备
创建fastdfs专有目录,所有文件均放在/app/fastdfs目录下
mkdir -p /app/fastdfs_document # -p 确保目录名称存在,不存在的就建一个。
cd /app/fastdfs_document
mkdir log #放日志
mkdir data #放数据
安装编译环境(出现Complete!
代表成功)
yum -y install git gcc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib zlib-devel openssl-devel wget vim -y
我全文使用git命令来安装和wget安装方式略有不同
2 安装libfastcommon
git clone https://github.com/happyfish100/libfastcommon.git --depth 1
cd libfastcommon/
#预编译&&安装
./make.sh && ./make.sh install
–depth 1的作用是:指定克隆深度,为1表示只克隆最近一次commit的分支的代码
本来是解决项目过大问题的,我加上就卡死了,建议去掉(官网是有的)
3 安装fastdfs
cd ../ #返回上一级目录
git clone https://github.com/happyfish100/fastdfs.git
cd fastdfs/
./make.sh && ./make.sh install
- 下面这3个文件,官网需要改,但是我发现我的没有sample文件,就不改了
cd /etc/fdfs/
cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
- /app/fastdfs_document就是刚才建的目录,这两个文件都是nginx要用的
cp /app/fastdfs_document/fastdfs/conf/http.conf /etc/fdfs
cp /app/fastdfs_document/fastdfs/conf/mime.types /etc/fdfs
4 安装fastdfs-nginx-module
cd..
git clone https://github.com/happyfish100/fastdfs-nginx-module.git
cp /app/fastdfs_document/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
这个包不好下载,可以使用我的百度网盘
链接:https://pan.baidu.com/s/1Jxrh8DoaK7xYKHUew8ig9Q
提取码:sm78
5 安装nginx
#建立nginx目录
mkdir -p /usr/local/nginx
cd /usr/local/nginx
#下载nginx压缩包
wget http://nginx.org/download/nginx-1.15.4.tar.gz
#解压
tar -zxvf nginx-1.15.4.tar.gz
cd nginx-1.15.4/
#添加fastdfs-nginx-module模块、nginx前缀、https
./configure --prefix=/usr/local/nginx --with-http_ssl_module --add-module=/app/fastdfs_document/fastdfs-nginx-module/src/
#--prefix=/usr/local/nginx 这个前缀最好带上,不然不知安装到哪里了
#--with-http_ssl_module 配置ssl证书用(一般用于https的请求),不加也行
#预编译及安装
make && make install
6 改tracker、storage和client的conf文件
127.0.0.1是本地ip(其实是我瞎写的)(通过ifconfig命令来查看本地ip)
如果需要外网上传文件,需要写外网ip
vim /etc/fdfs/tracker.conf
#需要修改的内容如下
port=22122
base_path=/app/fastdfs_document/data
vim /etc/fdfs/storage.conf
#需要修改的内容如下
port=23000
base_path=/app/fastdfs_document/data
# 数据和日志文件存储根目录
store_path0=/app/fastdfs_document/data
# 第一个存储目录 ,写本地ip
tracker_server=127.0.0.1:22122
# http访问文件的端口(默认8888,看情况修改,和nginx中保持一致)
http.server_port=7022
vim /etc/fdfs/client.conf
#需要修改的内容如下
base_path=/app/fastdfs_document/data
#tracker服务器IP和端口
tracker_server=127.0.0.1:22122
7 启动
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
#查看所有运行的端口
netstat -ntp
#netstat 命令用于显示网络状态。
#-n或--numeric 直接使用IP地址,而不通过域名服务器。
#-t或--tcp 显示TCP传输协议的连线状况。
#-p或--programs 显示正在使用Socket的程序识别码和程序名称。
然后会发现有一个fdfs_storaged进程和一个fdfs_trackerd进程
##### 8 测试上传
```powershell
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /app/logo.png
返回以下字符代表正确
group1/M00/00/00/rBTEk2DMUwuAbi0ZAABcfBWCiS0634.png
#查看文件【必须是完全按照我的文档来操作的,下面这个路径才有效】
cd /app/fastdfs_document/data/data/00/00
ll
9 配置nginx相关的文件并访问
vim /etc/fdfs/mod_fastdfs.conf
#需要修改的内容如下
tracker_server=127.0.0.1:22122 #tracker服务器IP和端口
# url 地址是否包含组名/卷名
url_have_group_name=true
# 数据组/卷对应的路径地址
store_path0=/app/fastdfs_document/data
#配置nginx.config
vim /usr/local/nginx/conf/nginx.conf
#添加如下配置
server {
listen 7022; ## 该端口为storage.conf中的http.server_port相同
server_name localhost;
location ~/group[0-9]/ {
ngx_fastdfs_module;
root /app/fastdfs_document/data/data/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
启动nginx
cd /usr/local/nginx/sbin/
./nginx -s reload
#测试下载,用外部浏览器访问刚才已传过的nginx安装包,引用返回的ID
http://127.0.0.1:7022/group1/M00/00/00/wKgAQ1pysxmAaqhAAA76tz-dVgg.tar.gz
看到图片代表成功了
公网ip和logo图片已模糊处理
java连接测试,请移步
https://editor.csdn.net/md?not_checkout=1&articleId=118494816
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/116392.html