mac下安装fastdfs 完全版
一、下载安装包和依赖 4件套都在里面
附上链接:链接:https://pan.baidu.com/s/1bqsRQPBim4rd25k0o3wxUQ 密码:qzai
二、解除mac安全限制,mac默认不允许操作系统目录
重启电脑 按住command+r
打开终端,输入csrutil disable 禁用安全限制
如果想要恢复 csrutil enable 启用
重启
三、安装
1、安装依赖 libevent pcre openssl
(1)安装libevent和openssl
libevent是个程序库,它将Linux的epoll、BSD类操作系统的kqueue等事件处理功能 封装成统一的接口。即使对服务器的连接数增加,也能发挥O(1)的
性能。 memcached使用这个libevent库,因此能在Linux、BSD、Solaris等操作系统上发挥其高性能。 关于事件处理这里就不再详细介绍,可以参考Dan Kegel
的The C10K Problem。
步骤1:下载libevent库,官网地址http://libevent.org/,我下载使用的版本为libevent-2.0.22-stable,下载libevent-2.0.22-stable.tar.gz文件存放在本地目
录。
步骤2:解压压缩文件,使用命令:
查看openssl版本 :
./configure --prefix=/usr/local CPPFLAGS="-I/usr/local/Cellar/openssl/1.0.2h_1/include" LDFLAGS="-I/usr/local/Cellar/openssl/1.0.2h_1/lib"
然后再make && sudo make install
2、新建fastdfs目录
sudo mkdir -p /fastdfs/tracker
sudo mkdir -p /fastdfs/storage
sudo mkdir -p /fastdfs/logs
3、新建库目录
sudo mkdir -p /usr/lib64
sudo mkdir -p /usr/local/lib64
4、安装libfastcommon
sudo ./make.sh && sudo ./make.sh install
5、Libfastcommon生成的库libfastcommon.so在/usr/lib64, 复制一份到/usr/lib
否则安装fastdfs会报错
6、安装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
7、启动tracker
修改配置文件 修改存放路径
sudo vim /etc/fdfs/tracker.conf
base_path=/fastdfs/tracker # tracker的数据和日志存放目录
8、启动tracker
sudo /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf star
9、启动storage
修改配置文件
sudo vim storage.conf
base_path=/fastdfs/storage # storage的数据和日志存放目录
store_path0=/fastdfs/storage # storage的上传文件存放路径
tracker_server=192.168.56.101:22122 # tracker的地址和端口号
10、启动storage
sudo /usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
查看是否启动成功
ps -ef | grep fdfs
把在lib64目录里生成的so动态库拷贝一份到/usr/lib里
11、安装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记得关闭防火墙
测试:
修改配置文件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访问图片
完成