配置了大半天,出現(xiàn)了些bug匀借,做一個簡單的記錄
1.下載安裝包和依賴
鏈接:https://pan.baidu.com/s/1hJev2o6dbbtgskZFmq0RiA 密碼:kni8
2.在mac中需要解除安全限制,默認(rèn)的情況下是不能操作系統(tǒng)目錄的
- 重啟電腦凳怨,并按下command + R
- 進(jìn)入到調(diào)試模式是鬼,打開終端,輸入
csrutil disable
李剖,解除安全限制 - 重啟
- 如果要恢復(fù)就輸入
csrutil enable
囤耳,在重啟
3.安裝配置
(1)使用brew安裝配置 libevent pcre openssl 三個庫(mac上一般會自帶)
(2)安裝fastdfs依賴包
- 解壓縮 libfastcommon-master.zip(解壓的路徑可以自定義)
- 進(jìn)入到 libfastcommon-master的目錄中
- 執(zhí)行
sudo ./make.sh
- 執(zhí)行
sudo ./make.sh install
(3) 安裝fastdfs(和上面一樣的操作)
- 解壓縮fastdfs-master.zip
- 進(jìn)入到 fastdfs-master目錄中
- 執(zhí)行 ./make.sh
- 執(zhí)行 sudo ./make.sh install
(4)配置跟蹤服務(wù)器tracker
- copy一份文件
sudo cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
- 自定義一個位置創(chuàng)建fastdfs(我創(chuàng)建的是/Users/(用戶名xxx)/fastdfs)在fastdfs下創(chuàng)建tracker
mkdir –p /Users/xxx/fastdfs/tracker
- 編輯/etc/fdfs/tracker.conf配置文件
sudo vim /etc/fdfs/tracker.conf
修改base_path = /Users/xxx/fastdfs/tracker(創(chuàng)建tracker的絕對路徑)
(5)配置存儲服務(wù)器storage(同上面的步驟)
- copy一份文件
sudo cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
- 自定義一個位置創(chuàng)建fastdfs(我創(chuàng)建的是/Users/(用戶民xxx)/fastdfs)在fastdfs下創(chuàng)建storage
mkdir –p /Users/xxx/fastdfs/storage
- 編輯/etc/fdfs/storage.conf配置文件
sudo vim /etc/fdfs/storage.conf
- 修改base_path = /Users/xxx/fastdfs/storage(創(chuàng)建tracker的絕對路徑)
- store_path0=/Users/xxx/fastdfs/storage
- tracker_server=自己電腦的ip地址:22122
(6)測試是否安裝成功
sudo cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
- 編輯/etc/fdfs/client.conf配置文件
sudo vim /etc/fdfs/client.conf
修改內(nèi)容:
base_path/Users/xxx/fastdfs/tracker
tracker_server=自己電腦的ip地址:22122 - 啟動服務(wù):
sudo /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
sudo /usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
- 查看是否啟動成功:
ps -ef|grep fdfs
- 上傳文件測試:
fdfs_upload_file /etc/fdfs/client.conf 要上傳的圖片文件路徑
如果返回group1/M00/00/00/CoD1lV3H_aSAU_7oABGGuXFSJm4039.jpg
的文件id則說明文件上傳成功
(7)安裝nginx及fastdfs-nginx-module (web服務(wù)器)
- 解壓縮 nginx-1.12.2.tar.gz
- 解壓縮 fastdfs-nginx-module-master.zip
- 進(jìn)入 fastdfs-nginx-module-master文件夾中:
cd xxx/fastdfs/fastdfs-nginx-module-master/src/
打開config:sudo vim config
更改里面的配置如下圖所示:
config
a,b不清楚是不是必須德玫,只是照做了椎麦,可以先試試上面的,不行在配置下面的a铃剔,b
a. 將/usr/lib 中的庫創(chuàng)建軟連接到 /usr/lib64
cd /usr/lib64
sudo ln -s /usr/lib64/libfastcommon.so libfastcommon.so
sudo ln -s /usr/lib64/libfdfsclient.so libfdfsclient.so
b. 將/usr/lib中l(wèi)ibfdfsclient.so庫拷貝到 /usr/local/lib 和 /usr/local/lib64中
sudo cp /usr/lib/libfdfsclient.so /usr/local/lib/
sudo cp /usr/lib/libfdfsclient.so /usr/local/lib64/
- 進(jìn)入nginx-1.12.2目錄中
- 執(zhí)行
sudo ./configure --prefix=/usr/local/nginx/ --add-module=fastdfs-nginx-module-master解壓后的目錄的絕對路徑/src
執(zhí)行好了在執(zhí)行編譯和安裝(出現(xiàn)缺少頭文件的錯誤就是第3步的config配置的問題,沒有填寫正確的路徑)nignx:獲取到fastdfs-nginx-module-master的關(guān)聯(lián)凤类,prefix是安裝的路徑
sudo make
sudo make install - sudo cp fastdfs-nginx-module-master解壓后的目錄中src下的mod_fastdfs.conf /etc/fdfs/mod_fastdfs.conf
- sudo vim /etc/fdfs/mod_fastdfs.conf
修改內(nèi)容:
connect_timeout=10
tracker_server=自己ubuntu虛擬機(jī)的ip地址:22122
url_have_group_name=true
store_path0=/home/python/fastdfs/storage - sudo cp 解壓縮的fastdfs-master目錄conf中的http.conf /etc/fdfs/http.conf
- sudo cp 解壓縮的fastdfs-master目錄中的mime.types /etc/fdfs/mime.types
9.sudo vim /usr/local/nginx/conf/nginx.conf
在http部分中添加配置信息如下:
server {
listen 8888;
server_name localhost;
location ~/group[0-9]/ {
ngx_fastdfs_module;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
nginx
(8)啟動nginx
sudo nginx
在瀏覽器中輸入127.0.0.1:8888/(上傳圖片返回的數(shù)據(jù))group1/M00/00/00/CoD1lV3H_aSAU_7oABGGuXFSJm4039.jpg
能在瀏覽器中正常的顯示圖片說明配置完成
可能出現(xiàn)的bug
(1) tracker_query_storage fail, error no: 28, error info: No space left on device
磁盤空間不足谜疤,(sudo vim /etc/fdfs/tracker.conf)中的reserved_storage_space,默認(rèn)的配置是總磁盤容量的10%履肃,將他改為了4GB
(2)編譯nginx的時候出現(xiàn)沒找到頭文件的錯誤坐桩,config文件中的路徑錯了