FastDFS_v4.06+nginx-1.4.2配置詳解
這幾天在玩FastDFS,在驚歎余大之牛的同時也由衷地感謝魚大的共享。針對Nginx+FastDFS的配置,做了些簡單記錄,希望能對後面了解這方面的朋友有所幫助。也希望余大及其他對這塊有研究的朋友多多指正。
具體步驟如下:
1、安裝FastDFS(我裝的是最新的版本FastDFS_v4.06),具體安裝步驟這裡就不重復了。
2、安裝Nginx(我裝的版本是:nginx-1.4.2),可直接以root用戶按默認安裝,我是非root用戶指定目錄編譯安裝:
1)下載nginx安裝包及依賴包(nginx-1.4.2.tar.gz、pcre-8.33.tar.gz、zlib-1.2.8.tar.gz)
2)分別解壓:
# tar zxvf nginx-1.4.2.tar.gz
# tar zxvf pcre-8.33.tar.gz
# tar zxvf zlib-1.2.8.tar.gz
3)編譯安裝
# cd nginx-1.4.2
#./configure --prefix=/webapp/nginx --with-pcre=/webapp/tools/pcre-8.33 --with-zlib=/webapp/tools/zlib-1.2.8
# make
# make install
4)修改nginx.conf配置文件,啟動nginx驗證是否安裝成功
3、Nginx添加模塊
1)下載安裝包(我用的是fastdfs-nginx-module_v1.15)
2)解壓:tar xzf fastdfs-nginx-module_v1.15.tar.gz
3)編譯安裝(Nginx的安裝源目錄,即nginx-1.4.2解壓目錄):
# ./configure --prefix=/webapp/nginx --add-module=/webapp/tools/fastdfs-nginx-module/src --with-pcre=/webapp/tools/pcre-8.33 --with-zlib=/webapp/tools/zlib-1.2.8
# make
# make install
說明:如果需要修改mod_fastdfs.conf文件的路徑,需要在安裝之前修改conf配置文件中的:-DFDFS_MOD_CONF_FILENAME='\"/etc/fdfs/mod_fastdfs.conf\"'"
4、修改配置文件
1)nginx.conf
在server中增加配置:
訪問路徑不帶group名(storage只有一個group的情況),如/M00/00/00/xxx:
location /M00 {
ngx_fastdfs_module;
}
訪問路徑帶group名(storage對應有多個group的情況),如/group1/M00/00/00/xxx:
location ~ /group([0-9])/M00 {
ngx_fastdfs_module;
}
2)mod_fastdfs.conf
將fastdfs-nginx-module_v1.15解壓目錄fastdfs-nginx-module/src下的mod_fastdfs.conf復制到-DFDFS_MOD_CONF_FILENAME配置的目錄下,如/etc/fdfs/。
修改配置:
tracker_server=192.168.1.241:22122 -- tracker server的ip和端口,此處可以寫多個tracker server,每行一個
url_have_group_name = true --訪問路徑帶group時為true否則為false,多個group的情況下,必須為true,為false時,group_count必須為0
storage只有一個group的情況:
group=group1 --storage對應的group
store_path0=/webapp/fastdfs/storage --storage存儲路徑
group_count = 0
storage對應有多個group的情況:
url_have_group_name = true --必須設置為true才能支持多個group
group_count = 2 --storage的group個數
[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/webapp/fastdfs/storage
[group2]
group_name=group2
storage_server_port=23000
store_path_count=1
store_path0=/webapp/fastdfs/storage2
5、重啟Nginx,驗證。