最近在部署公司服务器的nginx + mongodb + gridfs环境;
搜索了N多文档,基本上都一样,期间遇到很多问题;
下面是整理的一份搭建文档:
摘要nginx-gridfs是一个nginx的扩展模块,用于支持直接访问MongoDB的GridFS文件系统上的文件并提供HTTP访问。
一、安装mongodb
MongoDB
注:很多人搭建完后,发现访问不了图片和文件,跟Mongodb的配置有很多关系;附上我成功配置的mongodb,,直接解压可用;点击下载mongodb
例如:(下载我上面的包,解压,下面命令直接启动服务,亲测可用)
./mongod-port10001–dbpath../data/–logpath../log/mongodb.log–fork
停止MongoDB
千万要强调的是千万不要使用稳妥的方法是使用最稳妥的方式是使用shutdown命令来结束
>useadminswitchedtodbadmin>db.shutdownServer();
二、安装nginx及nginx-gridfs
依赖库、工具
1
2
#yum-yinstallpcre-developenssl-develzlib-devel
#yum-yinstallgccgcc-c++
如上几个依赖库,如果自动安装不成功,可手动安装;
下载nginx-gridfs源码
1
2
3
4
5
#gitclonehttps://github.com/mdirolf/nginx-gridfs.git
#cdnginx-gridfs
#gitcheckoutv0.8
#gitsubmoduleinit
#gitsubmoduleupdate
如上操作方法,可本地GIT下来再上传到服务器,也可直接在服务器GIT
下载nginx源码,编译安装。
1
2
3
4
5
#wget
#tarzxvfnginx-1.4.7.tar.gz
#cdnginx-1.4.7
#make-j8&&makeinstall-j8
修改/usr/local/nginx/conf/nginx.conf配置文件。
注:这里说明下,nginx有两个nginx.conf的配置文件,勿配错;
1
2
3
4
5
6
7
gridfspics
field=_id
type=objectid;
mongo127.0.0.1:10001;
}
关于这里的配置,简单说明下:
gridfstest:访问地址
pics:数据库
mongo 127.0.0.1:10001 #mongo的服务器地址及端口
————————————–
启动nginx服务
1
#/usr/local/nginx/sbin/nginx
重新加载/usr/local/nginx/sbin/nginx-sreload
3.测试
上传一个文件
列出库中文件:
root@d1:~#mongofileslist-dbpics
具体mongofiles使用可百度搜索下
或者直接./mongofiles–help查看帮助
浏览器访问:
如果可以访问图片,则配置成功;
注意事项:
安装过程中可能会遇到各种各样的错误,具体看环境不同,应对处理;
主要注意点
1.Nginx
2.Mongodb
3.Nginx.conf配置,参数上面文档说明
4.如果配置不成功,访问不了图片;多看看nginx的错误日志,会有很多收获
安装过程中,如果还有其他问题,可以看看我前面写的几篇文档;
第一个青春是上帝给的;第二个的青春是*自己努力的