fastdfs单主机配置多个storage
disabled=falsegroup_name=group1
bind_addr=172.1.1.1
client_bind=true
port=23000
connect_timeout=30
network_timeout=60
heart_beat_interval=30
stat_report_interval=60
base_path=/data/fastdfs
max_connections=256
buff_size = 256KB
accept_threads=1
work_threads=4
disk_rw_separated = true
disk_reader_threads = 1
disk_writer_threads = 1
sync_wait_msec=50
sync_interval=0
sync_start_time=00:00
sync_end_time=23:59
write_mark_file_freq=500
store_path_count=1
store_path0=/data/fastdfs
subdir_count_per_path=256
tracker_server=172.1.1.2:22122
log_level=info
run_by_group=
run_by_user=
allow_hosts=*
file_distribute_path_mode=0
file_distribute_rotate_count=100
fsync_after_written_bytes=0
sync_log_buff_interval=10
sync_binlog_buff_interval=10
sync_stat_file_interval=300
thread_stack_size=512KB
upload_priority=10
if_alias_prefix=
check_file_duplicate=0
file_signature_method=hash
key_namespace=FastDFS
keep_alive=0
use_access_log = false
rotate_access_log = false
access_log_rotate_time=00:00
rotate_error_log = false
error_log_rotate_time=00:00
rotate_access_log_size = 0
rotate_error_log_size = 0
log_file_keep_days = 0
file_sync_skip_invalid_record=false
use_connection_pool = false
connection_pool_max_idle_time = 3600
http.domain_name=
http.server_port=8888
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
disabled=false
group_name=groupuser2
bind_addr=172.1.1.1
client_bind=true
port=23001
connect_timeout=30
network_timeout=60
heart_beat_interval=30
stat_report_interval=60
base_path=/data/groupuser2
max_connections=256
buff_size = 256KB
accept_threads=1
work_threads=4
disk_rw_separated = true
disk_reader_threads = 1
disk_writer_threads = 1
sync_wait_msec=50
sync_interval=0
sync_start_time=00:00
sync_end_time=23:59
write_mark_file_freq=500
store_path_count=1
store_path0=/data/groupuser2
subdir_count_per_path=256
tracker_server=172.1.1.2:22122
log_level=info
run_by_group=
run_by_user=
allow_hosts=*
file_distribute_path_mode=0
file_distribute_rotate_count=100
fsync_after_written_bytes=0
sync_log_buff_interval=10
sync_binlog_buff_interval=10
sync_stat_file_interval=300
thread_stack_size=512KB
upload_priority=10
if_alias_prefix=
check_file_duplicate=0
file_signature_method=hash
key_namespace=FastDFS
keep_alive=0
use_access_log = false
rotate_access_log = false
access_log_rotate_time=00:00
rotate_error_log = false
error_log_rotate_time=00:00
rotate_access_log_size = 0
rotate_error_log_size = 0
log_file_keep_days = 0
file_sync_skip_invalid_record=false
use_connection_pool = false
connection_pool_max_idle_time = 3600
http.domain_name=
http.server_port=8889
1
2
3
4
5
6
7
cat config
ngx_addon_name=ngx_http_fastdfs_module
HTTP_MODULES="$HTTP_MODULES ngx_http_fastdfs_module"
NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_fastdfs_module.c"
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"
CORE_LIBS="$CORE_LIBS -L/usr/local/lib -lfastcommon -lfdfsclient"
CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64 -DFDFS_OUTPUT_CHUNK_SIZE='256*1024' -DFDFS_MOD_CONF_FILENAME='\"/etc/fdfs/mod_fastdfs.conf\"'"
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
cat mod_fastdfs.conf
#include http.conf
connect_timeout=2
network_timeout=30
storage_sync_file_max_delay = 86400
tracker_server=172.1.1.2:22122
load_fdfs_parameters_from_tracker=true
log_level=info
log_filename=/var/log/tengine/mod.log
url_have_group_name=true
response_mode=redirect
if_alias_prefix=
flv_support = true
flv_extension = flv
group_count = 5
group_name=group1
storage_server_port=172.1.1.1:23000
store_path_count=1
store_path0=/data/fastdfs
base_path=/data/fastdfs
group_name=groupuser2
storage_server_port=172.1.1.1:23001
store_path_count=1
store_path0=/data/groupuser2
base_path=/data/groupuser2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
nginx
server {
listen 8080;
server_name 172.1.1.1;
access_log /var/log/tengine/test_access.log;
error_log /var/log/tengine/test_error.log;
location /lua {
default_type 'text/plain';
content_by_lua 'ngx.say("hello,lua")';
}
location ~* /group1/M00/{
ngx_fastdfs_module;
set $needCreateImg 0;
if ( !-f $request_filename) {
set $needCreateImg "${needCreateImg}1";
}
if ($uri ~* "/group1/M00/(\d+)/(\d+)/(+).(gif|jpg|jpeg|png).(\d+x\d+).(gif|jpg|jpeg|png)") {
set $needCreateImg "${needCreateImg}2";
set $conUri "/$1/$2/$3.$4.$5.$6";
}
if ($needCreateImg = "012") {
set $image_root "/data/fastdfs/data";
set $file "$image_root$conUri";
rewrite_by_lua '
local index = string.find(ngx.var.conUri, "(+)x(+)");
local originalUri = string.sub(ngx.var.conUri, 0, index-2);
local area = string.sub(ngx.var.conUri, index);
index = string.find(area, "([.])");
area = string.sub(area, 0, index-1);
function table.contains(table, element)
for _, value in pairs(table) do
if value == element then
return true
end
end
return false
end
local c = "/usr/local/graphicsmagick/bin/gm convert " .. ngx.var.image_root ..originalUri.. " -thumbnail " .. area .. " - ";
local f = assert(io.popen(c, "r"))
local s = assert(f:read("*a"))
f:close()
ngx.say(s) ';
}
alias /data/fastdfs/data/;
}
}
再搞个8081就行了。
访问400的错误
页:
[1]