刚自己安装完毕,写下笔记,希望对大家有所帮助
-
下载安装包和依赖 4件套都在里面
附上链接:链接:https://pan.baidu.com/s/1bqsRQPBim4rd25k0o3wxUQ 密码:qzai -
解除mac安全限制,mac默认不允许操作系统目录
- 重启电脑 按住command+r
- 打开终端,输入csrutil disable 禁用安全限制
- 如果想要恢复 csrutil enable 启用
- 重启
-
安装
-
安装依赖 libevent pcre openssl 这三个库.我电脑自带.
-
新建fastdfs目录
sudo mkdir -p /fastdfs/tracker
sudo mkdir -p /fastdfs/storage
sudo mkdir -p /fastdfs/logs
-
新建库目录
sudo mkdir -p /usr/lib64
sudo mkdir -p /usr/local/lib64
-
安装libfastcommon
sudo ./make.sh && sudo ./make.sh install
Libfastcommon生成的库libfastcommon.so在/usr/lib64, 复制一份到/usr/lib
否则安装fastdfs会报错 -
安装fastdfs
sudo ./make.sh && sudo ./make.sh install
-
进入配置文件目录,修改文件名
cd /etc/fdfs
sudo cp tracker.conf.sample tracker.conf
sudo cp storage.conf.sample storage.conf
sudo cp client.conf.sample client.conf
-
-
启动tracker
- 修改配置文件 修改存放路径
sudo vim /etc/fdfs/tracker.conf
base_path=/fastdfs/tracker # tracker的数据和日志存放目录
-启动tracker
sudo /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf star
- 修改配置文件 修改存放路径
-
启动storage
- 修改配置文件
sudo vim storage.conf
base_path=/fastdfs/storage # storage的数据和日志存放目录 store_path0=/fastdfs/storage # storage的上传文件存放路径 tracker_server=192.168.56.101:22122 # tracker的地址和端口号
- 启动storage
sudo /usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
查看是否启动成功
ps -ef | grep fdfs
把在lib64目录里生成的so动态库拷贝一份到/usr/lib里
- 修改配置文件
-
安装该死的fastdfs-nginx-module
- 中间件移动到/fastdfs
sudo mv fastdfs-nginx-module /fastdfs
- 进入配置目录配置config文件
cd /fastdfs/fastdfs-nginx-module/src/
sudo vim config
红色的位置默认只有一个库的头文件路径,请加上,
并查看自己的库目录是否正确
自己看自己的目录进行修改 - 配置mod_fastdfs.conf
sudo vim /etc/fdfs/mod_fastdfs.cof
配置如下:
connect_timeout=10 # 客户端访问文件连接超时时长(单位:秒)
tracker_server=192.168.56.101:22122 # tracker服务IP和端口
url_have_group_name=true # 访问链接前缀加上组名
store_path0=/fastdfs/storage # 文件存储路径
复制/mod_fastdfs.cof到 /etc/fdfs下
sudo cp mod_fastdfs.conf /etc/fdfs/
- 复制部fastdfs源码目录中部分配置文件到/etc/fdfs中
cd ~/FastDFS/conf
cp http.conf mime.types /etc/fdfs/
-
将/usr/lib 中的库创建软连接到 /usr/lib64
cd /usr/lib64
sudo ln -s /usr/lib64/libfastcommon.so libfastcommon.so
sudo ln -s /usr/lib64/libfdfsclient.so libfdfsclient.so
-
将/usr/lib中libfdfsclient.so库拷贝到 /usr/local/lib 和 /usr/local/lib64中
因为make的时候要去其中一个目录中找这个动态库,具体是哪一个没有仔细研究 makefile,所以我都给拷贝了
sudo cp /usr/lib/libfdfsclient.so /usr/local/lib/
sudo cp /usr/lib/libfdfsclient.so /usr/local/lib64/
-
然后直接安装nginx
sudo ./configure --prefix=/opt/nginx --sbin-path=/usr/bin/nginx --add-module=/fastdfs/fastdfs-nginx-module/src
sudo make && sudo make install
配置中整合fastdfs-module
sudo vim /opt/nginx/conf/nginx.conf
在server中添加# 监听域名中带有group0 到 group9 的,交给FastDFS模块处理
location ~/group([0-9])/ {
ngx_fastdfs_module;
}
启动nginx
sudo nginx
查看是否启动成功
ps -ef | grep nginx
mac记得关闭防火墙
- 中间件移动到/fastdfs
-
测试:
-
修改配置文件client.conf
sudo vim /etc/fdfs/client.conf
修改内容
# 日志文件存放目录
base_path=/fastdfs/logs
# tracker 主机端口
tracker_server=172.16.228.128:22122
-
上传图片到fastdfs
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf ~/1.png
返回存储信息 -
通过浏览器访问nginx访问图片 完成
-