一、下載安裝包和依賴 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訪問圖片
完成