摘要: nginx-gridfs是一个nginx的扩展模块,用于支持直接访问MongoDB的GridFS文件系统上的文件并提供 HTTP
访问。
centos6.5 x64
mongodb-2.6.4
nginx-1.4.7
安装好mongodb
依赖库、工具
# yum -y install pcre-devel openssl-devel zlib-devel
# yum -y install gcc gcc-c++
下载nginx-gridfs源码
# git clone https://github.com/mdirolf/nginx-gridfs.git
# cd nginx-gridfs
# git checkout v0.8
# git submodule init
# git submodule update
下载nginx源码,编译安装。
# wget http://nginx.org/download/nginx-1.4.7.tar.gz
# tar zxvf nginx-1.4.7.tar.gz
# cd nginx-1.4.7
# ./configure --with-openssl=/usr/include/openssl --add-module=../nginx-gridfs/
# make -j8 && make install -j8
修改/usr/local/nginx/conf/nginx.conf配置文件。
location /pics/ {
gridfs pics
field=filename
type=string;
mongo 127.0.0.1:27017;
}
上例中数据库是pics,通过文件名filename来访问文件,filename的类型是string
启动nginx服务
# /usr/local/nginx/sbin/nginx
上传一个图片001.jpg到pics数据库中
打开:http://localhost/pics/001.jpg
如果成功,则可以看到显示图片了。
没有实现http的range support,也就是断点续传,分片下载的功能。