一) 缘由

因为公司业务需要,需要搭建图片服务器,需求很简单:读取+上传图片,当时第一考虑用nginx来作,但考虑到单纯用nginx来作,无法水平扩展和管理,一旦遇到海量图片,就无办法 扩展。所以考虑用文件系统来做,综合考虑最终选择用nginx+gridfs+mongodb,mongodb适用于小文件管理,而且可以分片集群,对后期维护和扩展很有帮助。

二) 环境搭建

2.1) 下载nginx1.6.0 stable版本

wget http://nginx.org/download/nginx-1.6.0.tar.gz
tar zxvf nginx-1.6.0.tar.gz

2.2) 下载gridfs-nginx 模块
git clone git://github.com/mdirolf/nginx-gridfs.git

2.3) 下载mongo-c-driver(/user/loucal/下)

git clone https://github.com/eagleas/mongo-c-driver.git

2.4) 拷贝mongo-c-driver至nginx-gridfs下
cp mongo-c_driver nginx-gridfs

2.5) 下载perl

a) 下载地址:http://sourceforge.net/projects/pcre/files/pcre/

pcre http://www.pcre.org

zlib http://www.zlib.net

openssl http://www.openssl.org

b)   将这三个包装在/usr/loucl/下

make && make install

2.6) 配置、安装nginx(红色字体注意修改路径)

a) ./configure --prefix=/usr/local/nginx --with-pcre=../pcre-8.34 --with-http_ssl_module --with-http_stub_status_module --with-http_flv_module --with-http_gzip_static_module --add-module=../nginx-gridfs --with-poll_module --without-select_module --with-http_realip_module --with-cc-opt=-Wno-error
--with-zlib=../zlib-1.2.8 --with-openssl=/usr/bin/openssl

./nginx -V 查看参数

b) make -j8

c) make install

三)下载mongodb2.4.10安装及启动

1) rpm包下载、安装、运行

1.1) 下载地址:http://downloads-distro.mongodb.org/repo

server版:mongo-10gen-server-版本号

client版:mongo-10gen-版本号

1.2) 安装
rpm -ivh 包.rpm
1.3 添加自启动项

1.3.1) 配置自启动法

a) 修改/etc/mongo.conf

自定义log、db路径
b) vim /etc/rc.local

添加 mongod --config /etc/mongo.conf

1.3.2) 命令启动法

a) 修改/etc/rc.local

mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs/mongodb.log --logappend --port=27017 --fork

四)配置nginx中的gridfs
4.1) 在/usr/lcoal/nginx/conf/nginx.conf 添加如下内容:

在server项下增加
location /img/ {
gridfs testimg field=filename type=string;
mongo 10.143.111.12:27017;
}

五) 上传图片至mongodb

sudo mongofiles put --host localhost --port 27017 --db images --local /home/1.jpg --type jpg

http://10.143.47.20/img/kongtiaolengmei.png

六) 测试图片上传是否成功

6.1) 启动nginx并在浏览器打开 http://localhost/pics/1.jpg 如果能打开,证明配置正确且上传成功

centos6.5 搭建nginx1.6.0 +gridfs +mongodb2.4..10环境的更多相关文章

  1. 腾讯云服务器 Centos6.5 安装 nginx1.12.0

    今天买了腾讯云,不要问我为什么没有买阿里云... 入正题: 如果出现 CentOS ping: unknown host 的话,表示没有配置dns vim /etc/sysconfig/network ...

  2. centos6.5安装nginx1.16.0

    参考:   centos7 编译安装nginx1.16.0( 完整版 ) https://blog.csdn.net/weixin_37773766/article/details/80290939  ...

  3. Linux CentOS6.5安装Nginx1.8.0

    一. 安装nginx 1. 准备1.8.0安装包 nginx-1.8.0.tar.gz 2. 安装第三方依赖 yum install gcc-c++ yum install -y pcre pcre- ...

  4. centos6.5 nginx-1.8.0和ftp搭建图片服务器

    一.Nginx的安装步骤 1.Nginx安装环境: gcc: 安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc:yum install gcc-c+ ...

  5. centos6.4搭建knowlededgeroot-1.0.4知识库平台

    知识库平台选择 http://www.oschina.net/project/tag/320/pkm 最近接到一个任务,要求搭建一个用于部门内部业务知识规范管理和共享的平台,目的是把部门内的FAQ知识 ...

  6. 开源知识库管理系统选型 centos6.4 搭建knowlededgeroot-1.0.4知识库平台

    开源知识库管理系统选型,除了使用wiki外,还有下面可选: http://www.knowledgebase-script.com/ https://github.com/lordlamer/know ...

  7. CentOS6.7上安装nginx1.8.0

    主题: CentOS6.7上安装nginx1.8.0 环境准备: 1.gcc-c++ 示例:yum install gcc-c++ 安装:gcc-c++ gcc-c++编译工具 2.PCRE(Perl ...

  8. CentOS6.7安装部署LNMP(nginx1.8.0+php5.6.10+mysql5.6.12)

    IP-10.0.0.8 1.安装nginx mkdir -p /server/tools cd /server/tools yum install -y pcre pcre-devel openssl ...

  9. CentOS6.9部署Redis3.2.9+FastDFS_4.06+Nginx1.5.0

    CentOS6.9部署Redis3.2.9+FastDFS_4.06+Nginx1.5.0 原文链接:https://www.toutiao.com/i6481931577499582990/ 一.上 ...

随机推荐

  1. Model Validation in Asp.net MVC

    原文:Model Validation in Asp.net MVC 本文用于记录Pro ASP.NET MVC 3 Framework中阐述的数据验证的方式. 先说服务器端的吧.最简单的一种方式自然 ...

  2. Django教程汇总

    Django基础教程 被解放的姜戈01 初试天涯 被解放的姜戈02 庄园疑云 被解放的姜戈03 所谓伊人 被解放的姜戈04 各取所需 被解放的姜戈05 黑面管家 被解放的姜戈06 假作真时 Djang ...

  3. 使用Canvas基于手势可以使树秋千

    用Canvas制作能够依据手势摆动的树 依据工作的须要.制作一个摆动的树做为页面的背景.为了添加页面的交互性,我又为背景中的树添加了鼠标(触控)事件,使他可以依据鼠标(触控)做出对应的动作,当手指做上 ...

  4. 关于SQL Server 2005 的自动远程数据库备份

    原文:(原创)关于SQL Server 2005 的自动远程数据库备份 由于项目需要,需要对目标服务器上的数据库每天进行备份并转移,查阅网上的一些帮助,结合自己的实际需要,写了这篇文章,希望对有同样需 ...

  5. JS获取字符串实际长度

    JS中默认中文字符长度和其它字符长度计算方法是一样的,但某些情况下我们需要获取中文字符串的实际长度,代码如下: function strLength(str) { var realLength = 0 ...

  6. Python开发环境Wing IDE 5.0测试第八版发布

    Wing IDE是著名的Python开发工具,是Wingware公司的主要产品.从1999年起,Wingware公司便开始专注于Python开发设计.Wing IDE在十几年的发展中,不管完善.其强大 ...

  7. Web Api 自动生成帮助文档

    Web Api 自动生成帮助文档   新建Web Api项目之后,会在首页有API的导航菜单,点击即可看到API帮助文档,不过很遗憾,Description 是没有内容的. 怎么办呢? 第一步: 如果 ...

  8. oracle实现自加力id

    --oracle实现自加力id --创建一个T_StudentInfo表 create table T_StudentInfo ( "id" integer not null pr ...

  9. sql语句 面试题

    ql语句 面试题   自动编号   学号   姓名 课程编号 课程名称 分数 1        2005001  张三  0001      数学    69 2        2005002  李四 ...

  10. vs10创建sqlclr部署失败

    将项目解决方案改为3.5,调试OK: