FastDFS5.02安裝說明

目錄php

介紹 3html

準備工做 3nginx

2.1 設置固定ip 3git

2.2 下載相關安裝文件 4github

安裝篇 4web

3.1 安裝libfastcommon-master 4apache

3.2 安裝 FastDFS 5ubuntu

3.3 安裝Nginx依賴 5vim

3.4 安裝Nginx 6瀏覽器

配置篇 6

4.1 tracker.conf配置 6

4.2 storage.conf配置 7

4.3 ngnix.conf配置 8

4.4 mod_fastdfs.conf配置 9

4.5 client.conf配置 9

4.6 http.conf配置 10

測試 10

5.1 上傳文件 10

5.2 下載文件 11

附錄 11

6.1 tracker.conf配置內容 11

6.2 storage.conf配置內容 16

6.3 ngnix.conf配置內容 21

6.4 mod_fastdfs.conf配置內容 23

6.5 client.conf配置內容 26


介紹

本文檔都是單節點設置,trackerstoragenginx都在同一臺服務器上。

準備工做

1.建議安裝以前先簡單瞭解一下FastDFS的原理

2.所用軟件:

Ubuntu14.04 server

libfastcommon-master.zip
FastDFS_v5.02.tar.gz

nginx-1.6.2.tar.gz

fastdfs-nginx-module_v1.16.tar.gz

3.建議使用root用戶

4.使用服務器地址:192.168.1.244

5./home目錄下建立trackerstoragedataclient文件夾

2.1 設置固定ip

 

192.168.1.244設定爲固定Ip,具體步驟以下:

1.找到文件並做以下修改:

vim /etc/network/interfaces

修改結果爲以下部分:

# This file describes the network interfaces available on your system

# and how to activate them. For more information, see interfaces(5).

# The loopback network interface

auto lo

iface lo inet loopback

# The primary network interface

auto p2p1

iface p2p1 inet static

address 192.168.1.244

gateway 192.168.1.1

netmask 255.255.255.0

注:p2p1爲192.168.1.244網卡名,不一樣服務器網卡名不一樣,請自行修改

 

2. 修改dns解析

由於之前是dhcp解析,因此會自動分配dns服務器地址

而一旦設置爲靜態ip後就沒有自動獲取到的dns服務器了

要本身設置一個

vim /etc/resolv.conf

nameserver 202.96.128.86

nameserver 192.168.1.1

nameserver 220.170.64.68

3.改完上面,若是重啓的話,仍是會變爲原來的樣子,因此要讓其永久改變,所以,執行:

vim /etc/resolvconf/resolv.conf.d/base  

  nameserver 192.168.1.1

  nameserver 220.170.64.68

3. 重啓網卡:

/etc/init.d/networking restart

2.2 下載相關安裝文件

安裝篇

3.1 安裝libfastcommon-master

libfastcommonfastdfs的依賴包。

libfastcommon-master.zip下載地址https://github.com/happyfish100/libfastcommon

下載完成後,將按照文件上傳到/var/tmp路徑下,而後經過cp命令將其放置到安裝路徑/home/deploy,解壓libfastcommon

unzip libfastcommon-master.zip 

進入libfastcommon-master目錄執行

./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.2 安裝 FastDFS

1、下載 FastDFS 源程序,下載地址 http://sourceforge.net/projects/fastdfs/,這裏下載的是 FastDFS_v5.02.tar.gz,下載完成後,將按照文件上傳到/var/tmp路徑下,而後經過cp命令將其放置到安裝路徑/home/deploy
2、在 FastDFS_v5.02.tar.gz 所在文件夾下執行:

     tar vxzf FastDFS_v5.02.tar.gz 

3、進入 /home/deploy/FastDFS 目錄,執行:

./make.sh   

./make.sh install  

若是運行如上命令後,在命令行信息最後看到相似
 恭喜你,已經安裝成功了!

 

3.3 安裝Nginx依賴

安裝 nginx時,須要安裝nginx的依賴:

apt-get install gcc

apt-get install libpcre3 libpcre3-dev

apt-get install libssl-dev

apt-get install build-essential

3.4 安裝Nginx

   將nginx安裝到/usr/local/路徑下

移動壓縮包:

cp /var/tmp/nginx-1.6.2.tar.gz /deploy/

解壓文件:

tar -xvzf nginx-1.6.2.tar.gz

cd nginx-1.6.2

而後執行命令:

./configure --prefix=/usr/local/nginx --add-module=/deploy/fastdfs-nginx-module/src

Make

Make install

配置篇

默安裝完成後,fastdfs默認的配置文件被放置在/etc/fdfs 目錄下面,其中包括:

Tracker.conf    負責均衡調度服務器配置文件

Storage.conf    文件存儲服務器配置文件

Client.conf    客戶端上傳配置文件

nginx.conf        Nginx配置文件

4.1 tracker.conf配置

A、修改/etc/fdfs/tracker.conf文件,修改以下:

# bind an address of this host

# empty for bind all addresses of this host

bind_addr=192.168.1.244

 

# the base path to store data and log files

base_path=/home/fastdfs/tracker

 

# max concurrent connections this server supported

max_connections=1000

 

# the method of selecting group to upload files

# 0: round robin

# 1: specify group

# 2: load balance, select the max free space group to upload file

store_lookup=1

 

# which group to upload file

# when store_lookup set to 1, must set store_group to the group name

store_group=group1

 

# HTTP服務是否不生效

http.disabled=true

B、進入/usr/local/bin/目錄,啓動tracker服務器,執行命令:

fdfs_trackerd /etc/fdfs/tracker.conf  
C、進入/home/fastdfs/logs/trackerd.log查看tracker的啓動日誌命令:

cat trackerd.log

若是看到相似:

 

 恭喜tracker server已經啓動成功!

4.2 storage.conf配置

A、修改/etc/fdfs/storage.conf文件:

# bind an address of this host

# empty for bind all addresses of this host

bind_addr=192.168.1.244

 

# the base path to store data and log files

base_path=/home/fastdfs/storage

 

# max concurrent connections the server supported

# default value is 256

# more max_connections means more memory will be used

max_connections=1000

 

# path(disk or mount point) count, default value is 1

store_path_count=1

 

# store_path#, based 0, if store_path0 not exists, it's value is base_path

# the paths must be exist

store_path0=/home/fastdfs/data

#store_path1=/home/yuqing/fastdfs2

 

http.disabled=true

 

group_name=group1  

 

 #修改爲tracker serverIP和端口信息

 tracker_server=192.168.1.244:22122

 

url_have_group_name = true

 

  B、進入/etc/fdfs/目錄,啓動storage服務器,執行

 fdfs_storaged  /etc/fdfs/storage.conf 

C、進入/home/fastdfs/logs/storage.log查看storage服務器啓動日誌: 

cat storaged.log 

若是看到相似信息:

 

 恭喜你,storage server已經啓動成功!

 

4.3 ngnix.conf配置

建立軟連接:

ln -s /home/fastdfs/data  /home/fastdfs/data/data/M00

進入/usr/local/nginx/conf路徑下,修改其配置文件:

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

添加:

location /group1/M00 {

            root /home/fastdfs/data/data;

            ngx_fastdfs_module;

     }

修改完畢配置文件,若是nginx處於啓動狀態,則使用如下重啓命令:

root@ubuntu224:/usr/local/nginx/sbin# ./nginx -s reload

若是未啓動nginx,則使用如下命令:

cd /usr/local/nginx/sbin

./nginx

確認80,23000端口已經監聽
 netstat -ntl

 

4.4 mod_fastdfs.conf配置

cp /deploy/fastdfs-nginx-module/src

cp mod_fastdfs.conf /etc/fdfs/

vi /etc/fdfs/mod_fastdfs.conf

配置內容以下:

#訪問文件的URI是否含有group名稱  

url_have_group_name=true  

#Tracker服務器  

tracker_server=192.168.1.244:22122

store_path0=/home/fastdfs/storage

storage_server_port=23000

4.5 client.conf配置

 

FastDFS安裝包中,自帶了客戶端程序,經過程序能夠進行文件上傳。在使用這個客戶端程序以前,首先須要配置client.conf,而後再進行文件上傳及下載。

進入目錄/etc/fdfs/修改Tracker服務器192.168.1.244下的配置文件 /etc/fdfs/client.conf
# the base path to store log files

base_path=/home/fastdfs/client

#use "#include" directive to include HTTP other settiongs

#include http.conf

 

# tracker_server can ocur more than once, and tracker_server format is

# "host:port", host can be hostname or ip address

tracker_server=192.168.1.244:22122

4.6 http.conf配置

無需配置

測試

通過前面的安裝、配置、啓動,立刻就能夠看到FastDFS的效果了,咱們先上傳一個文件,而後再經過http下載。

相關命令

中止trackerd服務:

killall fdfs_trackerd

中止storaged服務:

killall fdfs_storaged

 

啓動trackerd服務:

fdfs_trackerd /etc/fdfs/tracker.conf

啓動storaged服務:

fdfs_storaged  /etc/fdfs/storage.conf 

 

nginx在線安裝與卸載

apt-get install nginx 

apt-get remove nginx 

6.1 上傳文件

進入/usr/local/bin目錄,上傳文件,執行:

cp /var/tmp/guoyong.txt /usr/local/bin/

cd /usr/local/bin

fdfs_test /etc/fdfs/client.conf upload guoyong.txt

注: guoyong.txt   /var/tmp複製過來

若是看到以下信息:

 

恭喜你,上傳文件成功!

6.2 下載文件

在瀏覽器中,輸入上圖中的url地址http://192.168.1.244/group1/M00/00/00/wKgB9FUeT5qINEwRAAAAB32BJEIAAAAAgAAAAAAAAAf935.txt, tracker server會自動重定向到存儲文件的storage server,文件下載成功。

至此,已經成功搭建了FastDFS,編寫你本身的client來進行訪問吧:)

附錄

7.1 tracker.conf配置內容

# is this config file disabled

# false for enabled

# true for disabled

disabled=false

 

# bind an address of this host

# empty for bind all addresses of this host

bind_addr=192.168.1.244

 

# the tracker server port

port=22122

 

# connect timeout in seconds

# default value is 30s

connect_timeout=30

 

# network timeout in seconds

# default value is 30s

network_timeout=60

 

# the base path to store data and log files

base_path=/home/fastdfs/tracker

 

# max concurrent connections this server supported

max_connections=1000

 

# accept thread count

# default value is 1

# since V4.07

accept_threads=1

 

# work thread count, should <= max_connections

# default value is 4

# since V2.00

work_threads=4

 

# the method of selecting group to upload files

# 0: round robin

# 1: specify group

# 2: load balance, select the max free space group to upload file

store_lookup=1

 

# which group to upload file

# when store_lookup set to 1, must set store_group to the group name

store_group=group1

 

# which storage server to upload file

# 0: round robin (default)

# 1: the first server order by ip address

# 2: the first server order by priority (the minimal)

store_server=0

 

# which path(means disk or mount point) of the storage server to upload file

# 0: round robin

# 2: load balance, select the max free space path to upload file

store_path=0

 

# which storage server to download file

# 0: round robin (default)

# 1: the source storage server which the current file uploaded to

download_server=0

 

# reserved storage space for system or other applications.

# if the free(available) space of any stoarge server in 

# a group <= reserved_storage_space, 

# no file can be uploaded to this group.

# bytes unit can be one of follows:

### G or g for gigabyte(GB)

### M or m for megabyte(MB)

### K or k for kilobyte(KB)

### no unit for byte(B)

### XX.XX% as ratio such as reserved_storage_space = 10%

reserved_storage_space = 10%

 

#standard log level as syslog, case insensitive, value list:

### emerg for emergency

### alert

### crit for critical

### error

### warn for warning

### notice

### info

### debug

log_level=info

 

#unix group name to run this program, 

#not set (empty) means run by the group of current user

run_by_group=

 

#unix username to run this program,

#not set (empty) means run by current user

run_by_user=

 

# allow_hosts can ocur more than once, host can be hostname or ip address,

# "*" means match all ip addresses, can use range like this: 10.0.1.[1-15,20] or

# host[01-08,20-25].domain.com, for example:

# allow_hosts=10.0.1.[1-15,20]

# allow_hosts=host[01-08,20-25].domain.com

allow_hosts=*

 

# sync log buff to disk every interval seconds

# default value is 10 seconds

sync_log_buff_interval = 10

 

# check storage server alive interval seconds

check_active_interval = 120

 

# thread stack size, should >= 64KB

# default value is 64KB

thread_stack_size = 64KB

 

# auto adjust when the ip address of the storage server changed

# default value is true

storage_ip_changed_auto_adjust = true

 

# storage sync file max delay seconds

# default value is 86400 seconds (one day)

# since V2.00

storage_sync_file_max_delay = 86400

 

# the max time of storage sync a file

# default value is 300 seconds

# since V2.00

storage_sync_file_max_time = 300

 

# if use a trunk file to store several small files

# default value is false

# since V3.00

use_trunk_file = true

 

# the min slot size, should <= 4KB

# default value is 256 bytes

# since V3.00

slot_min_size = 256

 

# the max slot size, should > slot_min_size

# store the upload file to trunk file when it's size <=  this value

# default value is 16MB

# since V3.00

slot_max_size = 16MB

 

# the trunk file size, should >= 4MB

# default value is 64MB

# since V3.00

trunk_file_size = 64MB

 

# if create trunk file advancely

# default value is false

# since V3.06

trunk_create_file_advance = false

 

# the time base to create trunk file

# the time format: HH:MM

# default value is 02:00

# since V3.06

trunk_create_file_time_base = 02:00

 

# the interval of create trunk file, unit: second

# default value is 38400 (one day)

# since V3.06

trunk_create_file_interval = 86400

 

# the threshold to create trunk file

# when the free trunk file size less than the threshold, will create 

# the trunk files

# default value is 0

# since V3.06

trunk_create_file_space_threshold = 20G

 

# if check trunk space occupying when loading trunk free spaces

# the occupied spaces will be ignored

# default value is false

# since V3.09

# NOTICE: set this parameter to true will slow the loading of trunk spaces 

# when startup. you should set this parameter to true when neccessary.

trunk_init_check_occupying = false

 

# if ignore storage_trunk.dat, reload from trunk binlog

# default value is false

# since V3.10

# set to true once for version upgrade when your version less than V3.10

trunk_init_reload_from_binlog = false

 

# the min interval for compressing the trunk binlog file

# unit: second

# default value is 0, 0 means never compress

# FastDFS compress the trunk binlog when trunk init and trunk destroy

# recommand to set this parameter to 86400 (one day)

# since V5.01

trunk_compress_binlog_min_interval = 0

 

# if use storage ID instead of IP address

# default value is false

# since V4.00

use_storage_id = false

 

# specify storage ids filename, can use relative or absolute path

# since V4.00

storage_ids_filename = storage_ids.conf

 

# id type of the storage server in the filename, values are:

## ip: the ip address of the storage server

## id: the server id of the storage server

# this paramter is valid only when use_storage_id set to true

# default value is ip

# since V4.03

id_type_in_filename = ip

 

# if store slave file use symbol link

# default value is false

# since V4.01

store_slave_file_use_link = false

 

# if rotate the error log every day

# default value is false

# since V4.02

rotate_error_log = false

 

# rotate error log time base, time format: Hour:Minute

# Hour from 0 to 23, Minute from 0 to 59

# default value is 00:00

# since V4.02

error_log_rotate_time=00:00

 

# rotate error log when the log file exceeds this size

# 0 means never rotates log file by log file size

# default value is 0

# since V4.02

rotate_error_log_size = 0

 

# if use connection pool

# default value is false

# since V4.05

use_connection_pool = false

 

# connections whose the idle time exceeds this time will be closed

# unit: second

# default value is 3600

# since V4.05

connection_pool_max_idle_time = 3600

 

# HTTP port on this tracker server

http.server_port=8080

 

http.disabled=true

# HTTP服務是否不生效

 

# check storage HTTP server alive interval seconds

# <= 0 for never check

# default value is 30

http.check_alive_interval=30

 

# check storage HTTP server alive type, values are:

#   tcp : connect to the storge server with HTTP port only, 

#        do not request and get response

#   http: storage check alive url must return http status 200

# default value is tcp

http.check_alive_type=tcp

 

# check storage HTTP server alive uri/url

# NOTE: storage embed HTTP server support uri: /status.html

http.check_alive_uri=/status.html

 

7.2 storage.conf配置內容

# is this config file disabled

# false for enabled

# true for disabled

disabled=false

 

# the name of the group this storage server belongs to

group_name=group1

 

# bind an address of this host

# empty for bind all addresses of this host

bind_addr=192.168.1.244

 

# if bind an address of this host when connect to other servers 

# (this storage server as a client)

# true for binding the address configed by above parameter: "bind_addr"

# false for binding any address of this host

client_bind=true

 

# the storage server port

port=23000

 

# connect timeout in seconds

# default value is 30s

connect_timeout=30

 

# network timeout in seconds

# default value is 30s

network_timeout=60

 

# heart beat interval in seconds

heart_beat_interval=30

 

# disk usage report interval in seconds

stat_report_interval=60

 

# the base path to store data and log files

base_path=/home/fastdfs/storage

 

# max concurrent connections the server supported

# default value is 256

# more max_connections means more memory will be used

max_connections=1000

 

# the buff size to recv / send data

# this parameter must more than 8KB

# default value is 64KB

# since V2.00

buff_size = 256KB

 

# accept thread count

# default value is 1

# since V4.07

accept_threads=1

 

# work thread count, should <= max_connections

# work thread deal network io

# default value is 4

# since V2.00

work_threads=4

 

# if disk read / write separated

##  false for mixed read and write

##  true for separated read and write

# default value is true

# since V2.00

disk_rw_separated = true

 

# disk reader thread count per store base path

# for mixed read / write, this parameter can be 0

# default value is 1

# since V2.00

disk_reader_threads = 1

 

# disk writer thread count per store base path

# for mixed read / write, this parameter can be 0

# default value is 1

# since V2.00

disk_writer_threads = 1

 

# when no entry to sync, try read binlog again after X milliseconds

# must > 0, default value is 200ms

sync_wait_msec=50

 

# after sync a file, usleep milliseconds

# 0 for sync successively (never call usleep)

sync_interval=0

 

# storage sync start time of a day, time format: Hour:Minute

# Hour from 0 to 23, Minute from 0 to 59

sync_start_time=00:00

 

# storage sync end time of a day, time format: Hour:Minute

# Hour from 0 to 23, Minute from 0 to 59

sync_end_time=23:59

 

# write to the mark file after sync N files

# default value is 500

write_mark_file_freq=500

 

# path(disk or mount point) count, default value is 1

store_path_count=1

 

# store_path#, based 0, if store_path0 not exists, it's value is base_path

# the paths must be exist

store_path0=/home/fastdfs/data

#store_path1=/home/yuqing/fastdfs2

 

# subdir_count  * subdir_count directories will be auto created under each 

# store_path (disk), value can be 1 to 256, default value is 256

subdir_count_per_path=256

 

# tracker_server can ocur more than once, and tracker_server format is

#  "host:port", host can be hostname or ip address

tracker_server=192.168.1.244:22122

 

#standard log level as syslog, case insensitive, value list:

### emerg for emergency

### alert

### crit for critical

### error

### warn for warning

### notice

### info

### debug

log_level=info

 

#unix group name to run this program, 

#not set (empty) means run by the group of current user

run_by_group=

 

#unix username to run this program,

#not set (empty) means run by current user

run_by_user=

 

# allow_hosts can ocur more than once, host can be hostname or ip address,

# "*" means match all ip addresses, can use range like this: 10.0.1.[1-15,20] or

# host[01-08,20-25].domain.com, for example:

# allow_hosts=10.0.1.[1-15,20]

# allow_hosts=host[01-08,20-25].domain.com

allow_hosts=*

 

# the mode of the files distributed to the data path

# 0: round robin(default)

# 1: random, distributted by hash code

file_distribute_path_mode=0

 

# valid when file_distribute_to_path is set to 0 (round robin), 

# when the written file count reaches this number, then rotate to next path

# default value is 100

file_distribute_rotate_count=100

 

# call fsync to disk when write big file

# 0: never call fsync

# other: call fsync when written bytes >= this bytes

# default value is 0 (never call fsync)

fsync_after_written_bytes=0

 

# sync log buff to disk every interval seconds

# must > 0, default value is 10 seconds

sync_log_buff_interval=10

 

# sync binlog buff / cache to disk every interval seconds

# default value is 60 seconds

sync_binlog_buff_interval=10

 

# sync storage stat info to disk every interval seconds

# default value is 300 seconds

sync_stat_file_interval=300

 

# thread stack size, should >= 512KB

# default value is 512KB

thread_stack_size=512KB

 

# the priority as a source server for uploading file.

# the lower this value, the higher its uploading priority.

# default value is 10

upload_priority=10

 

# the NIC alias prefix, such as eth in Linux, you can see it by ifconfig -a

# multi aliases split by comma. empty value means auto set by OS type

# default values is empty

if_alias_prefix=

 

# if check file duplicate, when set to true, use FastDHT to store file indexes

# 1 or yes: need check

# 0 or no: do not check

# default value is 0

check_file_duplicate=0

 

# file signature method for check file duplicate

## hash: four 32 bits hash code

## md5: MD5 signature

# default value is hash

# since V4.01

file_signature_method=hash

 

# namespace for storing file indexes (key-value pairs)

# this item must be set when check_file_duplicate is true / on

key_namespace=FastDFS

 

# set keep_alive to 1 to enable persistent connection with FastDHT servers

# default value is 0 (short connection)

keep_alive=0

 

# you can use "#include filename" (not include double quotes) directive to 

# load FastDHT server list, when the filename is a relative path such as 

# pure filename, the base path is the base path of current/this config file.

# must set FastDHT server list when check_file_duplicate is true / on

# please see INSTALL of FastDHT for detail

##include /home/yuqing/fastdht/conf/fdht_servers.conf

 

# if log to access log

# default value is false

# since V4.00

use_access_log = false

 

# if rotate the access log every day

# default value is false

# since V4.00

rotate_access_log = false

 

# rotate access log time base, time format: Hour:Minute

# Hour from 0 to 23, Minute from 0 to 59

# default value is 00:00

# since V4.00

access_log_rotate_time=00:00

 

# if rotate the error log every day

# default value is false

# since V4.02

rotate_error_log = false

 

# rotate error log time base, time format: Hour:Minute

# Hour from 0 to 23, Minute from 0 to 59

# default value is 00:00

# since V4.02

error_log_rotate_time=00:00

 

# rotate access log when the log file exceeds this size

# 0 means never rotates log file by log file size

# default value is 0

# since V4.02

rotate_access_log_size = 0

 

# rotate error log when the log file exceeds this size

# 0 means never rotates log file by log file size

# default value is 0

# since V4.02

rotate_error_log_size = 0

 

# if skip the invalid record when sync file

# default value is false

# since V4.02

file_sync_skip_invalid_record=false

 

# if use connection pool

# default value is false

# since V4.05

use_connection_pool = false

 

# connections whose the idle time exceeds this time will be closed

# unit: second

# default value is 3600

# since V4.05

connection_pool_max_idle_time = 3600

 

# use the ip address of this storage server if domain_name is empty,

# else this domain name will ocur in the url redirected by the tracker server

http.domain_name=

 

# the port of the web server on this storage server

http.server_port=8888

 

http.disabled=true

 

 

7.3 ngnix.conf配置內容

 

#user  nobody;

worker_processes  1;

 

#error_log  logs/error.log;

#error_log  logs/error.log  notice;

#error_log  logs/error.log  info;

 

#pid        logs/nginx.pid;

 

 

events {

    worker_connections  1024;

}

 

 

http {

    include       mime.types;

    default_type  application/octet-stream;

 

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

    #                  '$status $body_bytes_sent "$http_referer" '

    #                  '"$http_user_agent" "$http_x_forwarded_for"';

 

    #access_log  logs/access.log  main;

 

    sendfile        on;

    #tcp_nopush     on;

 

    #keepalive_timeout  0;

    keepalive_timeout  65;

 

    #gzip  on;

 

   # upstream fdfs_group1 {

# server 192.168.1.244:80 weight=1 max_fails=2 fail_timeout=30s;

 #   }

    server {

        listen       80;

        server_name  localhost;

 

        #charset koi8-r;

 

        #access_log  logs/host.access.log  main;

 

location /group1/M00 {

            root /home/fastdfs/data/data;

            ngx_fastdfs_module;

     }

 

        location / {

            root   html;

            index  index.html index.htm;

        }

 

        #error_page  404              /404.html;

 

        # redirect server error pages to the static page /50x.html

        #

        error_page   500 502 503 504  /50x.html;

        location = /50x.html {

            root   html;

        }

 

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80

        #

        #location ~ \.php$ {

        #    proxy_pass   http://127.0.0.1;

        #}

 

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

        #

        #location ~ \.php$ {

        #    root           html;

        #    fastcgi_pass   127.0.0.1:9000;

        #    fastcgi_index  index.php;

        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

        #    include        fastcgi_params;

        #}

 

        # deny access to .htaccess files, if Apache's document root

        # concurs with nginx's one

        #

        #location ~ /\.ht {

        #    deny  all;

        #}

    }

 

 

    # another virtual host using mix of IP-, name-, and port-based configuration

    #

    #server {

    #    listen       8000;

    #    listen       somename:8080;

    #    server_name  somename  alias  another.alias;

 

    #    location / {

    #        root   html;

    #        index  index.html index.htm;

    #    }

    #}

 

 

    # HTTPS server

    #

    #server {

    #    listen       443 ssl;

    #    server_name  localhost;

 

    #    ssl_certificate      cert.pem;

    #    ssl_certificate_key  cert.key;

 

    #    ssl_session_cache    shared:SSL:1m;

    #    ssl_session_timeout  5m;

 

    #    ssl_ciphers  HIGH:!aNULL:!MD5;

    #    ssl_prefer_server_ciphers  on;

 

    #    location / {

    #        root   html;

    #        index  index.html index.htm;

    #    }

    #}

 

}

 

7.4 mod_fastdfs.conf配置內容

# connect timeout in seconds

# default value is 30s

connect_timeout=2

 

# network recv and send timeout in seconds

# default value is 30s

network_timeout=30

 

# the base path to store log files

base_path=/home/fastdfs/mod_fastdfs

 

# if load FastDFS parameters from tracker server

# since V1.12

# default value is false

load_fdfs_parameters_from_tracker=true

 

# storage sync file max delay seconds

# same as tracker.conf

# valid only when load_fdfs_parameters_from_tracker is false

# since V1.12

# default value is 86400 seconds (one day)

storage_sync_file_max_delay = 86400

 

# if use storage ID instead of IP address

# same as tracker.conf

# valid only when load_fdfs_parameters_from_tracker is false

# default value is false

# since V1.13

use_storage_id = false

 

# specify storage ids filename, can use relative or absolute path

# same as tracker.conf

# valid only when load_fdfs_parameters_from_tracker is false

# since V1.13

storage_ids_filename = storage_ids.conf

 

# FastDFS tracker_server can ocur more than once, and tracker_server format is

#  "host:port", host can be hostname or ip address

# valid only when load_fdfs_parameters_from_tracker is true

tracker_server=192.168.1.244:22122

 

# the port of the local storage server

# the default value is 23000

storage_server_port=23000

 

# the group name of the local storage server

group_name=group1

 

# if the url / uri including the group name

# set to false when uri like /M00/00/00/xxx

# set to true when uri like ${group_name}/M00/00/00/xxx, such as group1/M00/xxx

# default value is false

url_have_group_name = true

 

# path(disk or mount point) count, default value is 1

# must same as storage.conf

store_path_count=1

 

# store_path#, based 0, if store_path0 not exists, it's value is base_path

# the paths must be exist

# must same as storage.conf

store_path0=/home/fasfdfs/data

#store_path1=/home/yuqing/fastdfs1

 

# standard log level as syslog, case insensitive, value list:

### emerg for emergency

### alert

### crit for critical

### error

### warn for warning

### notice

### info

### debug

log_level=info

 

# set the log filename, such as /usr/local/apache2/logs/mod_fastdfs.log

# empty for output to stderr (apache and nginx error_log file)

log_filename=

 

# response mode when the file not exist in the local file system

## proxy: get the content from other storage server, then send to client

## redirect: redirect to the original storage server (HTTP Header is Location)

response_mode=proxy

 

# the NIC alias prefix, such as eth in Linux, you can see it by ifconfig -a

# multi aliases split by comma. empty value means auto set by OS type

# this paramter used to get all ip address of the local host

# default values is empty

if_alias_prefix=

 

# use "#include" directive to include HTTP config file

# NOTE: #include is an include directive, do NOT remove the # before include

#include http.conf

 

 

# if support flv

# default value is false

# since v1.15

flv_support = true

 

# flv file extension name

# default value is flv

# since v1.15

flv_extension = flv

 

 

# set the group count

# set to none zero to support multi-group

# set to 0  for single group only

# groups settings section as [group1], [group2], ..., [groupN]

# default value is 0

# since v1.14

group_count = 1

 

# group settings for group #1

# since v1.14

# when support multi-group, uncomment following section

[group1]

group_name=group1

storage_server_port=23000

store_path_count=1

store_path0=/home/fastdfs/data

#store_path1=/home/yuqing/fastdfs1

 

# group settings for group #2

# since v1.14

# when support multi-group, uncomment following section as neccessary

#[group2]

#group_name=group2

#storage_server_port=23000

#store_path_count=1

#store_path0=/home/yuqing/fastdfs

 

 

7.5 client.conf配置內容

# connect timeout in seconds

# default value is 30s

connect_timeout=30

 

# network timeout in seconds

# default value is 30s

network_timeout=60

 

# the base path to store log files

base_path=/home/fastdfs/client

 

# tracker_server can ocur more than once, and tracker_server format is

#  "host:port", host can be hostname or ip address

tracker_server=192.168.1.244:22122

 

#standard log level as syslog, case insensitive, value list:

### emerg for emergency

### alert

### crit for critical

### error

### warn for warning

### notice

### info

### debug

log_level=info

 

# if use connection pool

# default value is false

# since V4.05

use_connection_pool = false

 

# connections whose the idle time exceeds this time will be closed

# unit: second

# default value is 3600

# since V4.05

connection_pool_max_idle_time = 3600

 

# if load FastDFS parameters from tracker server

# since V4.05

# default value is false

load_fdfs_parameters_from_tracker=false

 

# if use storage ID instead of IP address

# same as tracker.conf

# valid only when load_fdfs_parameters_from_tracker is false

# default value is false

# since V4.05

use_storage_id = false

 

# specify storage ids filename, can use relative or absolute path

# same as tracker.conf

# valid only when load_fdfs_parameters_from_tracker is false

# since V4.05

storage_ids_filename = storage_ids.conf

 

 

#HTTP settings

http.tracker_server_port=80

 

#use "#include" directive to include HTTP other settiongs

#include http.conf

相關文章
相關標籤/搜索