1. 程式人生 > >linux中安裝FastDFS-v5.05+nginx-1.8.0

linux中安裝FastDFS-v5.05+nginx-1.8.0

1、軟體下載
wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz
wget http://jaist.dl.sourceforge.net/project/fastdfs/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1.16.tar.gz
wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz
wget http://nginx.org/download/nginx-1.8.0.tar.gz
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.36.tar.gz
wget http://zlib.net/zlib-1.2.8.tar.gz

2、libfastcommon安裝:
cp V1.0.7.tar.gz /usr/local/
tar -zxvf V1.0.7.tar.gz
cd libfastcommon-1.0.7
./make.sh
./make.sh install


libfastcommon.so預設安裝到了/usr/lib64/libfastcommon.so,而FastDFS主程式設定的lib目錄是/usr/local/lib,所以設定軟連線
ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so

3、安裝FastDFS:
(1)tar -zxvf V5.05.tar.gz -C /usr/local
cd /usr/local/fastdfs-5.05/

./make.sh
./make.sh install
cd /etc/fdfs

(2)配置檔案設定:
cp tracker.conf.sample tracker.conf
cp storage.conf.sample storage.conf
cp client.conf.sample client.conf

詳細設定見附件
tracker.conf配置中要修改的幾個項:
bind_addr=自己的ip(外網)
port=22122
http.server_port=8080


storage.conf配置中要修改的幾個項:
group_name=group1
bind_addr=自己的ip(外網)
port=23000
base_path=/usr/local/fastdfs
store_path0=/usr/local/fastdfs
tracker_server=自己的ip(外網):22122
http.server_port=8888

(3)啟動
啟動tracker storage.conf
fdfs_trackerd /etc/fdfs/tracker.conf
fdfs_storaged /etc/fdfs/storage.conf

4、安裝nginx外掛:
(1)安裝
tar -zxvf fastdfs-nginx-module_v1.16.tar.gz
cd fastdfs-nginx-module/src/

(2)config檔案修改:
vi config

修改如下配置,我這裡原來是
CORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/"
改成
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"
這個是很重要的,不然在nginx編譯的時候會報錯的,我看網上很多在安裝nginx的fastdfs的外掛報錯,都是這個原因,而不是版本不匹配。

cp mod_fastdfs.conf /etc/fdfs

修改配置
group_name=group1
tracker_server=自己的ip(外網):22122
store_path0=/usr/local/fastdfs
base_path=/usr/local/fastdfs
url_have_group_name = true




2)、配置檔案伺服器的軟連線
ln -s /usr/local/fastdfs/data /usr/local/fastdfs/data/M00 (配置檔案中stoage存放資料的路徑)


同時將以下兩個檔案複製到/etc/fdfs/
cp /usr/local/fastdfs-5.05/http.conf /etc/fdfs/
cp /usr/local/fastdfs-5.05/mime.types /etc/fdfs/


5、nginx安裝:
在每個Storage伺服器上安裝Nginx

(1)pcre安裝:
tar -zxvf pcre-8.36.tar.gz
cd pcre-8.36
./configure
make && make install
cd ../

ln -s /usr/local/lib/libpcre.so.1 /lib64/

(2)zlib安裝:
tar -zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make && make install
cd ../

(3)nginx安裝:
tar -zxvf nginx-1.8.0.tar.gz
cd nginx-1.8.0

./configure --prefix=/usr/local/nginx-1.8.0 --add-module=/usr/local//fastdfs-nginx-module/src
make
make install


cd /usr/local/nginx/conf
vi nginx.conf


在server中新增

location /group1/M00{
root /usrdata/fastdfs/data;
ngx_fastdfs_module;
}


啟動:
/usr/local/nginx/sbin/nginx

安裝完成。

附帶一個nginx的啟動與停止:

nginx -s reload  :修改配置後重新載入生效 nginx -s reopen  :重新開啟日誌檔案
nginx -t -c /path/to/nginx.conf 測試nginx配置檔案是否正確
關閉nginx:
nginx -s stop  :快速停止nginx
         quit  :完整有序的停止nginx
其他的停止nginx 方式:
ps -ef | grep nginx
kill -QUIT 主程序號     :從容停止Nginx
kill -TERM 主程序號     :快速停止Nginx
pkill -9 nginx          :強制停止Nginx
啟動nginx:
nginx -c /path/to/nginx.conf
平滑重啟nginx:
kill -HUP 主程序號
6、測試檔案上傳:
/usr/bin/fdfs_test /etc/fdfs/client.conf upload 1.jpg(自己找一個圖片測試)


根據提示訪問檔案