FastDFS怎么安裝和配置整合Nginx-1.13.3

一:下載fastdfs

  我們一共需要三個文件

  1.fastdfs  分布式文件存儲系統(tǒng)  

  2.libfastcommon  fastdfs函數庫  

  3.fastdfs-nginx-module  連接nginx功能模塊  

  下載時候請注意,此處下載的格式為 .zip 并不是 tar.gz。之所以如此是因為,在使用fastdfs-nginx-module模塊整合nginx時候會出錯,原因是 fastdfs版本必須 >= 5.11才可以。否則編譯nginx的時候會報錯。可以看看模塊的 install文件,里面有說明。由于fastdfs發(fā)布的版本最高只到 5.10,作者還沒有將版本更新到5.11.但是github上的代碼已經更新,所以直接下載即可。這里是作者 github地址

注:解壓zip格式的文件,需要系統(tǒng)已經安裝了 unzip軟件。沒有的可以使用命令安裝:?yum install zip unzip?

  為了安裝方便,操作過程中,可以切換到root權限進行操作

  下載完成之后,將文件夾上傳到服務器

FastDFS怎么安裝和配置整合Nginx-1.13.3

  再次提醒此處的都是zip格式的文件,使用命令?unzip filename?逐一解壓每個zip文件。例如:??unzip fastdfs-master

  下面是解壓后的情況,因為不喜歡帶master 的后綴,在解壓之后刪除了。可以使用命令操作???mv oldfilename newfilename

?例如:?mv fastdfs-master fastdfs

FastDFS怎么安裝和配置整合Nginx-1.13.3

二:安裝fastdfs

  1.安裝fastdfs函數庫

  解壓之后,先進入?libfastcommon?目錄???cd libfastcommon

    編譯文件?./make.sh

    安裝:????./make.sh install

  安裝完成之后,進入?fastdfs? cd fastdfs?和?libfastcommon?同樣的安裝方式

    編譯文件??./make.sh

    安裝:????? ./make.sh install?

?  安裝完成之后,可以看到兩個目錄,后面會使用到

FastDFS怎么安裝和配置整合Nginx-1.13.3

三:配置

  1.配置說明

  配置文件請根據服務器的不同,進行不同的配置。本文中 tracker server, storage server 都安裝在一臺服務器上。

  2.配置文件目錄

  在安裝完成之后,在 /etc 下會生成一個 fdfs 文件夾,進入fast配置文件目錄?cd /etc/fdfs/?。可以看到以 .sample 結尾的示例文件。

FastDFS怎么安裝和配置整合Nginx-1.13.3

  為了方便,使用命令刪除以上所有文件??rm -f *?,然后復制 /fastdfs/conf 目錄內所有文件到 /etc/fdfs 目錄下。

FastDFS怎么安裝和配置整合Nginx-1.13.3

注:/fastdfs/conf為解壓后的fastdfs目錄

  3.配置和啟動tracker server

  打開?tracker.conf文件??vim ./tracker.conf?, 修改base_path路徑改成你自己的目錄, 端口之類的沒占用情況下就不修改了

FastDFS怎么安裝和配置整合Nginx-1.13.3

  修改完成之后,嘗試啟動tracker? /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start

注:base_path路徑需要預先創(chuàng)建, 否則報錯: Error info: no such file or Directory

  命令執(zhí)行之后,發(fā)現沒有任何反應,接著使用命令?netstat -unltp|grep fdfs?,查看是否啟動

FastDFS怎么安裝和配置整合Nginx-1.13.3

  可以看到tracker server 已經在22122端口監(jiān)聽

  4.配置和啟動storage server

  接下來修改storage.conf配置文件??vim storage.conf?,打開文件之后同樣的修改base_path路徑,同時修改tracker server地址和store_path。端口地址、組名保持不變。

FastDFS怎么安裝和配置整合Nginx-1.13.3

  tracker server地址:

FastDFS怎么安裝和配置整合Nginx-1.13.3

  store_path 地址:

FastDFS怎么安裝和配置整合Nginx-1.13.3

注:以上的tracker server地址,請設置成服務器對應地址。端口沒修改情況下,保持默認。

  store_path路徑如果不修改,將無法啟動storage server服務。不會有任何提示,可以打開 /fastdfs/logs 文件夾下的storaged.log文件,查看錯誤信息。

  ok,修改完成之后,啟動storage,?/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start?,同樣也是沒有任何反應。接著使用命令? netstat -unltp|grep fdfs看看是否啟動

FastDFS怎么安裝和配置整合Nginx-1.13.3

? ? 出現上圖的情況,說明tracker server、storage server已經成功啟動。

  5.測試上傳服務

  接下來打開client.conf配置文件??vim client.conf?,只需要修改base_path和tracker_server兩個地方即可。

FastDFS怎么安裝和配置整合Nginx-1.13.3

  當修改完成之后,試試能否上傳文件,剛好目錄有一張圖片

FastDFS怎么安裝和配置整合Nginx-1.13.3

  使用命令將圖片上傳

?/usr/bin/fdfs_test?/etc/fdfs/client.conf?upload?./anti-steal.jpg

FastDFS怎么安裝和配置整合Nginx-1.13.3

  當看到上面一長串的字符,ok 上傳成功了。并成功返回了 圖片地址。到存儲目錄下看看,發(fā)現多出了幾張圖片。其中一張圖片和商品圖片地址后綴一樣,那么文件已經存儲到本地。

FastDFS怎么安裝和配置整合Nginx-1.13.3

  雖然返回圖片地址,但是現在的fastdfs已經不支持http協(xié)議。在4.0.5版本時候已經移除了 http支持,因此不能直接通過圖片地址訪問。所有我們通過fastdfs模塊整合nginx,以提供http服務。

四.整合nginx和fastdfs

  1. 整合模塊

  此處假設你已經安裝過nginx及其依賴包,如果還沒有安裝nginx可以看我另一個文章:centos7 安裝nginx

  整合nginx不需要安裝fastdfs模塊,在配置nginx時候將fastdfs-nginx-module模塊添加進去即可。下面先開始配置nginx,進入nginx目錄下配置文件

./configure? --prefix=/opt/nginx? --with-pcre=/home/mgame/soft/pcre-8.41? --with-openssl=/home/mgame/soft/openssl-1.1.0f? --with-zlib=/home/mgame/soft/zlib-1.2.11? --add-module=/home/mgame/soft/fastdfs-nginx-module/src

    編譯  make

    安裝  make install

  在安裝過程如果出現下面的錯誤,那么請查看模塊中的 install文件,對fastdfs版本的要求(開頭部分已經說明本文的fastdfs版本必須>= 5.11)。

  error: ‘fdfshttpparams’ has no member named ‘support_multi_range'(pcontext->range_count > 1 && !g_http_params.support_multi_range))

FastDFS怎么安裝和配置整合Nginx-1.13.3

  將模塊添加到nginx并安裝完成之后,進入到nginx安裝目錄 /opt/nginx/conf 內,打開 nginx.conf配置文件。

FastDFS怎么安裝和配置整合Nginx-1.13.3

  注:此處的nginx目錄,是在配置nginx時候設置的,請根據各自的設置,打開文件。

?  將下面的配置添加到文件中,端口其他設置不變。

location?/group1/m00?{ ??ngx_fastdfs_module; }

FastDFS怎么安裝和配置整合Nginx-1.13.3

  注:/group 前面必須有斜線,否則在訪問的時候,根路徑為nginx安裝目錄。

  2.配置模塊參數

  在設置完成之后, 如果現在直接啟動nginx那么會發(fā)現,依然無法通過之前上傳成功的圖片地址訪問。在百思不得其解情況下,想到了的nginx不是有個logs文件夾,用于記錄登錄及錯誤信息之類的詳情。

  那么打開error.log文件看看。ok 找到問題所在了

FastDFS怎么安裝和配置整合Nginx-1.13.3

  明晃晃的兩個 error, 第一行說明了錯誤原因:file /etc/fdfs/mod_fastdfs.conf not exist?? 在 /etc/fdfs/ 目錄下不存在mod_fastdfs.conf文件。該文件在模塊fastdfs-nginx-module的src目錄內

?  既然找到了文件位置,那么進入到?/fastdfs-nginx-module/src?目錄下,將文件?mod_fastdfs.conf?復制到 /etc/fdfs/ 目錄下? 命令:?cp mod_fastdfs.conf /etc/fdfs/

  操作完成之后,打開剛剛拷貝的mod_fastdfs.conf 配置文件? vim mod_fastdfs.conf ,分別tracker_server、url_have_group_name、store_path0三個屬性的參數

  tracker_server:

FastDFS怎么安裝和配置整合Nginx-1.13.3

  url_have_group_name:

FastDFS怎么安裝和配置整合Nginx-1.13.3

  注:因為訪問的地址中包含了組名group1,如果生成的地址中不包含組名,可以不用設置。

  store_path0:

FastDFS怎么安裝和配置整合Nginx-1.13.3

  修改完成之后,進入?/opt/nginx/sbin?目錄下,重新啟動nginx? ./nginx -s reload?,然后訪問下,之前上傳成功后返回的圖片地址吧。

FastDFS怎么安裝和配置整合Nginx-1.13.3

  經過配置后,已經能夠成功的訪問fastdfs存儲的文件。

? 版權聲明
THE END
喜歡就支持一下吧
點贊14 分享