group1的ip 192.168.124.10
group2的ip 192.168.124.51
1.yum -y install pcre pcre- gcc-c++ gcc* zlib zlib-devel openssl openssl-devel gc-devel gd gd-devel git
2.安裝libfastcommon
cd /usr/local/src
git clone https://github.com/happyfish100/libfastcommon.git
cd libfastcommon
./make.sh && ./make.sh install
3.創建軟鏈接
ln -s /usr/lib64/libfastcommon.so /usr/lib/
ln -s /usr/lib64/libfastcommon.so /usr/local/lib/
ln -s /usr/lib64/libfastcommon.so /usr/local/lib64/
ln -s /usr/lib64/libfdfsclient.so /usr/lib/
ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/
ln -s /usr/lib64/libfdfsclient.so /usr/locla/lib64/
4.安裝fastdfs
cd /usr/local/src
git clone https://github.com/happyfish100/fastdfs.git
cd fastdfs //進入到fastdfs-master目錄
./make.sh && ./make.sh install html
cp -r /usr/local/src/fastdfs/conf/* /etc/fdfs/
cd /etc/fdfs/
group1的配置
1.vim /etc/fdfs/tracker.conf
bind_addr=192.168.124.10
port=22122
base_path=/data/server/fastdfs
store_lookup=0
store_group=group1
store_server=0
use_storage_id = true
id_type_in_filename = id
2.vim /etc/fdfs/storage_ids.conf
100001 group1 192.168.124.10
100002 group2 192.168.124.51
3.vim /etc/fdfs/client.conf
base_path=/data/server/fastdfs_cli
tracker_server=192.168.124.10:22122
use_storage_id = true
4.vim /etc/fdfs/storage.conf
group_name=group1
bind_addr=192.168.124.10
port=23000
base_path=/data/server/fastdfs_sto
store_path0=/data/server/fastdfs_sto
tracker_server=192.168.124.10:22122
5.mkdir /data/server/fastdfs_cli
mkdir /data/server/fastdfs_sto
mkdir /data/server/fastdfs
6.fdfs_trackerd /etc/fdfs/tracker.conf
fdfs_storaged /etc/fdfs/storage.conf
group2的配置
1.vim /etc/fdfs/storage_ids.conf
100001 group1 192.168.124.10
100002 group2 192.168.124.51
2.vim /etc/fdfs/storage.conf
group_name=group2
bind_addr=192.168.43.15
port=23000
base_path=/data/server/fastdfs_sto
store_path0=/data/server/fastdfs_sto
tracker_server=192.168.124.51:22122
3.建立目錄mkdir /data/server/fastdfs_sto
4.啓動fdfs_storaged /etc/fdfs/storage.confnginx
安裝nginx
1.cd /usr/local/src
wget https://raw.githubusercontent.com/ww1230258u/server/master/fastdfs-nginx-module_v1.16.tar.gz
tar zxvf fastdfs-nginx-module_v1.16.tar.gz
vim /usr/local/src/fastdfs-nginx-module/src/configc++
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/" //修改這條語句,去掉/local
2.cd /usr/local/src
wget https://raw.githubusercontent.com/ww1230258u/server/master/nginx-1.14.2.tar.gz
tar zxf nginx-1.14.2.tar.gz
cd nginx-1.14.2
編譯
./configure --prefix=/data/server/nginx --add-module=/usr/local/src/fastdfs-nginx-module/src --with-http_gunzip_module --with-pcre --with-http_image_filter_module --with-http_stub_status_modulegit
make && make install
nginx配置
group1
vim /data/server/nginx/conf/nginx.conf //在server的函數下編錄之後語句
location ~ /group1/M00/(\w+)/(\w+)/(.+)_(\d+)x(\d+).(png|jpg|gif) {
root "/data/server/nginx/html/";
ngx_fastdfs_module;
set $iw "$4";
set $ih "$5";
image_filter resize $iw $ih;
image_filter_buffer 2M;
try_files /group1/M00/$1/$2/$3.$6 /404.html;
}
location /group1/M00 {
root "/data/server/nginx/html/";
ngx_fastdfs_module;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
group2
location ~ /group2/M00/(\w+)/(\w+)/(.+)_(\d+)x(\d+).(png|jpg|gif) {
root "/data/server/nginx/html/";
ngx_fastdfs_module;
set $iw "$4";
set $ih "$5";
image_filter resize $iw $ih;
image_filter_buffer 2M;
try_files /group2/M00/$1/$2/$3.$6 /404.html;
}
location /group2/M00 {
root "/data/server/nginx/html/";
ngx_fastdfs_module;
}
location = /favicon.ico {
log_not_found off;
access_log off;
} github
/data/server/nginx/sbin/nginx //啓動nginx服務vim
4、配置mod_fastdfs.conf文件
mkdir /data/server/nginx/html/group1/
ln -s /data/server/fastdfs_storage/data /data/server/nginx/html/group1/M00
//注意:「/data/server/fastdfs_storage/data」後面不加「/」app
cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
vim /etc/fdfs/mod_fastdfs.conf
//配置group1ide
use_storage_id = true
tracker_server=192.168.124.10:22122
url_have_group_name = true
group_name=group1
store_path0=/data/server/fastdfs_sto
[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/data/server/fastdfs_sto函數
//配置group2
vim /etc/fdfs/mod_fastdfs.conf測試
use_storage_id = true
tracker_server=192.168.124.10:22122
url_have_group_name = true
group_name=group2
store_path0=/data/server/fastdfs_sto
[group2]
group_name=group2
storage_server_port=23000
store_path_count=2
store_path0=/data/server/fastdfs_sto
【安裝後結果】
測試圖片是否上傳
fdfs_upload_file /etc/fdfs/client.conf /etc/fdfs/anti-steal.jpg
group1/M00/00/00/oYYBAFwvZOyALm1UAABdreSfEnY259.jpg
測試圖片是否能縮進
192.168.124.10/group1/M00/00/00/oYYBAFwvZOyALm1UAABdreSfEnY259_100x50.jpg
ps:沒標註group1和group2的兩機都要作