用nginx-gridFS讀取MongoDB的圖片

jopen 10年前發布 | 31K 次閱讀 MongoDB Web服務器

nginx-gridfs是一個nginx的擴展模塊,用于支持直接訪問MongoDB的GridFS文件系統上的文件并提供 HTTP 訪問。

一、安裝mongodb

創建/etc/yum.repos.d/mongodb.repo文件,配置文件內容如下:

[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=1

安裝mongodb server及mongodb shell。

$ sudo yum install mongodb-org-server-2.6.3 mongodb-org-shell-2.6.3

配置mongodb的數據存儲路徑。

# mkdir /data/mongodb
# chown mongod:mongod /data/mongodb

修改/etc/mongod.conf配置的路徑指向。

# 配置數據庫存儲路徑
dbpath=/data/mongodb

啟動mongo服務

$ sudo chkconfig mongod on
$ sudo service mongod restart

二、安裝nginx及nginx-gridfs

依賴庫、工具

# 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 /static/ {
    gridfs qrcode
        field=_id
        type=objectid;
    #這里的mongo以slave模式啟動會有問題?
    mongo 127.0.0.1:27017;
}

啟動nginx服務

# /usr/local/nginx/sbin/nginx

三、測試

上傳圖片。

# sudo mongofiles put --host localhost --port 27017 --db qrcode --local ~/photo.jpg --type jpg

在瀏覽器里輸入http://localhost/static/53db05cab177550d8613176f能打開圖片就說明成功了

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!