標籤:利用nginx第三方模組gridfs讀mongodb
還待更新...
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()關閉資料庫
本文出自 “山大王” 部落格,請務必保留此出處http://chenshifei.blog.51cto.com/11883413/1857685
安裝nginx+gridfs+mongodb