还待更新...

1、准备软件包

nginx-1.4.7.tar.gz

nginx-gridfs.tar.gz

mongodb-linux-x86_64-rhel62-2.7.7.tgz

地址如下:

http://nginx.org/download/nginx-1.4.7.tar.gz

http://pan.baidu.com/s/1mgpiOmG

http://downloads.mongodb.org/linux/mongodb-linux-x86_64-rhel62-2.7.7.tgz

2、解压安装

tar xf nginx-1.4.7.tar.gz

tar xf nginx-gridfs.tar.gz

3、安装依赖添加用户并编译

cd nginx-1.4.7/

yum -y install pcre-devel openssl-devel zlib-devel

useradd nginx -s /sbin/nologin -M

./configure --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --with-http_stub_status_module  --with-http_ssl_module --with-poll_module --add-module=/root/nginx-gridfs  --user=nginx --group=nginx

4、处理makefile内的错误并安装

vim objs/Makefile

去掉第三行的-Werror

make &&make install

5、安装mongodb

tar xf mongodb-linux-x86_64-rhel62-2.7.7.tgz  -C /usr/local/

cd /usr/local/mv mongodb-linux-x86_64-rhel62-2.7.7 mongodb

mkdir /usr/local/mongodb/data

vim /usr/local/mongodb/mongodb.conf

#端口

port=27017

#数据文件存放目录

dbpath= /usr/local/mongodb/data

#日志文件存放目录

logpath= /usr/local/mongodb/mongodb.log

#使用追加的方式写日志

logappend=true

#以守护程序的方式启用,即在后台运行

fork=true

#最大同时连接数

maxConns=500

#只允许通过本机访问

#bind_ip=127.0.0.1

#启用验证

#auth = true

6、配置环境变量

echo 'export PATH=$PATH:/usr/local/mongodb/bin'>>/etc/profile

. /etc/profile

7、启动mongodb

/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/mongodb.conf

8、向mongodb中添加图片(photo.jpg在当前目录)

mongofiles put photo.jpg  -h127.0.0.1:27017 -d my_app -t jpg

9、配置nginx访问mongodb

 location /abc/ {

     gridfs my_app root_collection=fs field=filename type=string;

#--my_app是mongodb中的数据库,root_collection是表的前缀,field是文件按文件名称访问,type是存储文件名称的类型

     mongo 127.0.0.1:27017;

#--mongodb的IP和端口

 }

10、重启nginx并访问192.168.1.219/abc/photo.jpg

11、注意事项

1)nginx的版本无所谓,但是gridfs第三方模块插件要正确,否则nginx的error日志会报连接不上mongodb的错误

2)mongodb的版本不能高于3.0,我这里使用的是2.7,如果过高,nginx的error.log将会出现内存溢出错误malloc(18446744056529682432) failed

3)配置编译后要去掉werror才能继续make,否则会报错

4)nginx更换版本不用删除,重新编译即可

5)关闭mongodb请进入数据库使用方法db.shutdownserver()关闭数据库