前置條件 一個網絡暢通的centos7並且把fastdfs工具資源包放進去了 沒有這些資源的看前一篇博客
1.centos7.3上面還需yum安裝一些資源
安裝gcc(編譯時需要)
因爲fastdfs是C語言編寫的,所以安裝fastdfs之前先安裝gcc進行yum install -y gcc gcc- c++
yum install -y gcc gcc- c++
安裝libevent(運行時需要)
安裝libevent,因爲fastdfs是依賴libevent庫的
libevent yum -y install libevent
2、詳細步驟
檢查前面的資源是否完整 切換目錄到放資源的目錄下
後面的步驟很多 ll 和pwd命令指示爲了方便各位讀者對照檢查排錯 如果和我的不一樣說明你的步驟有問題
很多命令用table鍵補全就好
cd /usr/local/FastDFS/
ll
2.1 安裝libfastcommon
libfastcommon是FastDFS官方提供的,libfastcommon包含了FastDFS運行所需要的一些基礎庫。
// 解壓libfastcommon致/usr/local目錄下
tar -zxvf libfastcommonV1.0.7.tar.gz -C /usr/local/
cd ..
./make.sh
./make.sh install
顯然我們創建了一個目錄來安裝我們的東西 檢查一下
ls /usr/lib64 | grep libfastcommon.so
cp usr/lib64/libfastcommon.so /usr/lib
再ls /usr/lib | grep libfastcommon.so 檢查一下 和上圖一樣 就沒問題了
2.2 安裝FastDFS
cd到放FastDFS_v5.05.tar.gz文件的目錄(絕對路徑也行只要拿得到)
// 解壓FastDFS_v5.05.tar.gz文件解壓至/usr/local目錄(就是最初資源包的目錄)下
tar -zxvf ./FastDFS_v5.05.tar.gz -C /usr/local
ll 看一下現在的目錄比之前多了啥
對比沒問題了就編譯和安裝
./make.sh
./make.sh install
再看下變化
cp ./conf/* /etc/fdfs/
ll /etc/fdfs/
檢查一下 複製進去的東西對不對
2.3 配置tracker
vim /etc/fdfs/tracker.conf
沒有行號看起來很煩 輸入冒號: set number 回車 行號就出來了
考慮到不會linux的人會看 不會vim 前面說到的第一款xftp 5就起作用了
cd /etc/fdfs/
然後點開這個
像Windows那樣改就行了
具體要改的地方有
//修改base_path路徑 base_path=/home/yuqing/fastdfs 改爲: base_path=/home/fastdfs //路徑不存在的話需要手動創建
//配置http端口號 http.server_port 改爲: 80
//保險一點不管有沒創建一下
mkdir /home/fastdfs
看一下 store_group=group1確認這項對不對 後面配置要用
//啓動tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
2.4 配置storage
vim /etc/fdfs/storage.conf
像前面一樣的不會vim的也 可以直接點開
(1) group_name=group1 //必須和tracker的組名相同
(2) base_path=/home/fastdfs
(3) store_path0=/home/fastdfs/storage /改成你想放東西的目錄 路徑不存在的話需要手動創建
//store存放文件的位置(store_path)
store_path0=/home/yuqing/fastdfs 改爲: store_path0=/home/fastdfs/storage
//如果有多個掛載磁盤則定義多個store_path,修改如下:
#store_path1=.....
#store_path2=......
(4) tracker_server=你的ip:22122
不知道的ifconfig查看
不管咋樣
mkdir /home/fastdfs/storage/
(5) 啓動:/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
2.5 測試上傳 (一樣的套路 簡單點描述了)
vim /etc/fdfs/client.conf
或者xftp5編輯
(1) base_path=/home/fastdfs
(2) tracker_server=你的ip:22122
上傳一張照片至/usr/local/fastdfs/目錄
測試之前,現在阿里雲控制檯添加22222的端口(可以隨便設置一個建議一萬往後),放開上傳端口
(3) 測試:/usr/bin/fdfs_test /etc/fdfs/client.conf upload me.jpg //自己上傳一張圖片到根目錄下
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /usr/local/FastDFS/logo.jpg
上圖中的url地址就是對應照片的路徑地址對應的storage服務器上的/home/fdfs_storage/data/00/00/xxxxxx.jpg文件,由於現在還沒有和nginx整合無法使用瀏覽器查看對應的圖片和http下載
2.6 安裝FastDFS-nginx-module
(1) tar -zxvf fastdfs-nginx-module_v1.16.tar.gz && cd fastdfs-nginx-module
(2) vim ./src/config去掉文中的local,改完如下:
(3) vim ./src/mod_fastdfs.conf
base_path=/home/fastdfs/storage //此處必須是存儲路徑
tracker_server=你的ip:22122
group_name=group1 //和前面配置組名保持一致
store_path0=/home/fastdfs/storage //M00
url_have_group_name = true //允許使用組名
(4) cp ./src/mod_fastdfs.conf /etc/fdfs/
(5) cp /usr/lib64/libfdfsclient.so /usr/lib
(6) cp ./* /usr/local/fastdfs-nginx-module //路徑不存在自行創建
2.7 安裝並配置nginx
回到最初那個資源包解壓nginx壓縮包並進入其中
cd /usr/local/FastDFS
1 tar -zxvf fastdfs-nginx-module_v1.16.tar.gz -C /usr/local
cd /usr/local/fastdfs-nginx-module
2 mkdir -p /var/temp/nginx/client //創建nginx客戶端目錄
3 切換目錄到: /usr/local/fastdfs-nginx-module/src/ 目錄下,修改config文件,將文件中的所有 /usr/local/ 路徑改爲 /usr/
4.將fastdfs-nginx-module/src下的mod_fastdfs.conf拷貝至/etc/fdfs/下,
並修改mod_fastdfs.conf
// 將fastdfs-nginx-module/src下的mod_fastdfs.conf拷貝至/etc/fdfs/下
cp mod_fastdfs.conf /etc/fdfs/
//修改 /etc/fdfs/mod_fastdfs.conf 的內容
vi /etc/fdfs/mod_fastdfs.conf
base_path=/tmp 修改爲 base_path=/home/fastdfs
修改tracker_server爲你的阿里雲IP(對外網的ip) //(多個tracker配置多行)
#tracker_server=192.168.172.20:22122
url中包含group名稱 url_have_group_name=true
// 指定文件存儲路徑(上面配置的store路徑)
store_path0=/home/fastdfs/storage
group_name=group1 //和前面配置組名保持一致
整合完畢 開始正式安裝
5 . wget http://nginx.org/download/nginx-1.17.5.tar.gz
tar -zxvf nginx-1.17.5.tar.gz -C /usr/local
安裝nginx的依賴庫,安裝成功如下圖所示
//安裝nginx的依賴庫
yum install pcre && yum install pcre-devel && yum install zlib && yum install zlib-devel && yum install openssl && yum install openssl-devel
// 進入nginx解壓的目錄下 cd /usr/local/nginx-1.17.5/ 檢查一下結果
加入配置命令
//加入模塊命令配置
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--add-module=/usr/local/fastdfs-nginx-module/src
安裝成功如圖
6. make && make install
7.安裝成功後查看/usr/local/nginx目錄下,是否含有以下文件
// 切換到/usr/local/nginx目錄下 cd /usr/local/nginx
8.// 拷貝文件到/etc/fdfs 下
cd /usr/local/FastDFS/conf
cp http.conf mime.types /etc/fdfs/
//創建logs目錄
9.mkdir /usr/local/nginx/logs
//切換到/usr/local/nginx/conf/目錄下
/修改nginx文件
修改文件中的pid和sever配置,
server_name指定本機ip,ocation /group1/M00/:group1爲nginx 服務FastDFS的分組名稱,M00是FastDFS自動生成編號,對應store_path0=/home/fdfs_storage,如果FastDFS定義store_path1,這裏就是M01
vim /usr/local/nginx/conf/nginx.conf把server改成:
server {
listen 80;
server_name 你的ip;
location /group1/M00/{
ngx_fastdfs_module;
}
}
啓動nginx
// 切換到sbin目錄下
cd /usr/local/nginx/sbin/
//啓動nginx
./nginx
//查詢nginx進程
ps -ef | grep nginx
開機自啓動:vim /etc/rc.d/rc.local並加入/usr/local/nginx/sbin/nginx
重啓:/usr/local/nginx/sbin/nginx -s reload
如果你的防火牆沒有關閉,請關閉。