FastDFS的配置、部署与API使用解读(7)Nginx的FastDFS模块
1、Nginx的FastDFS模块什么作用?
我们在使用FastDFS部署一个分布式文件系统的时候,通过FastDFS的客户端API来进行文件的上传、下载、删除等操作。同时通过FastDFS的HTTP服务器来提供HTTP服务。但是FastDFS的HTTP服务较为简单,无法提供负载均衡等高性能的服务,所以FastDFS的开发者——淘宝的架构师余庆同学,为我们提供了Nginx上使用的FastDFS模块。其使用非常简单。
2、下载FastDFS的Nginx模块
在该地址下载Nginx的FastDFS模块(也可以叫FastDFS的Nginx模块):
http://code.google.com/p/fastdfs/downloads/list
如果你部署过Nginx,一定知道该如何加载自定义模块,如果没有,那么第3部分为你解释。这很简单,不必费神。
3、部署带有FastDFS模块的Nginx
- cd /home/michael
- wget http://nginx.org/download/nginx-1.0.11.tar.gz
- wget http://fastdfs.googlecode.com/files/fastdfs-nginx-module_v1.10.tar.gz
- tar zxvf nginx-1.0.11.tar.gz
- tar zxvf fastdfs-nginx-module-v1.10.tar.gz
- cd nginx-1.0.11.tar.gz
- ./configure --add-module=/home/michael/fastdfs-nginx-module-v1.10/src
- make
- sudo make install
cd /home/michael wget http://nginx.org/download/nginx-1.0.11.tar.gz wget http://fastdfs.googlecode.com/files/fastdfs-nginx-module_v1.10.tar.gz tar zxvf nginx-1.0.11.tar.gz tar zxvf fastdfs-nginx-module-v1.10.tar.gz cd nginx-1.0.11.tar.gz ./configure --add-module=/home/michael/fastdfs-nginx-module-v1.10/src make sudo make install
注意:安装Nginx要依赖于gcc,g++,make,libz,libbz2,libreadline,pcre等,可在《高性能Web服务器Nginx的配置与部署研究(2)Nginx入门级配置与部署及“Hello World”》一文中了解。
4、配置
该模块的配置文件在 fastdfs-nginx-module/src/mod_fastdfs.conf 文件中。具体的配置项解释如下:
- #连接超时时间,默认值是30秒
- connect_timeout=2
- #网络超时时间,默认值是30秒
- network_timeout=30
- #Tracker服务器
- tracker_server=123.123.123.123:999
- tracker_server=234.234.234.234:888
- #本机的Storage端口号,默认值为23000
- storage_server_port=23000
- #本机Storage的组名
- group_name=group2
- #访问文件的URI是否含有group名称
- url_have_group_name=true
- #存储路径个数
- store_path_count=3
- #存储路径
- store_path0=/data/fastdfs/storage/data
- store_path1=/data/fastdfs/storage/data
- #日志级别
- log_level=debug
- #日志名(可选)
- log_filename=/data/fastdfs/mod_nginx/data
- #当本地不存在该文件时的响应策略,proxy则从其他Storage获取然后响应给client,redirect则将请求转移给其他Storage(HTTP的头设置为本地)
- response_mode=redirect
- #目前我还未使用过该参数,默认可设置为空
- if_alias_prefix=
- #是否使用HTTP配置文件,如果使用则前面只留一个#
- ##include http.conf