1. 程式人生 > >nginx+gridfs+mongodb 配置訪問png圖片顯示無法加載問題

nginx+gridfs+mongodb 配置訪問png圖片顯示無法加載問題

nginx配置文件 做了 nginx配置 副本 server port 問題 模塊 bject

上傳文件後,瀏覽器中請求:http://&lt;nginx server ip>:<port>/gfs/<my file> 瀏覽器出現“無法打開頁面”的錯誤,查看錯誤日誌,http error code 500。error.log中顯示:
malloc(18446744056529682432) failed (12: Cannot allocate memory), client: <Client IP>, server: localhost, request: "GET /gfs/test2.zip HTTP/1.1", host: "<Nginx server IP>"

但是查看訪問請求是成功的 get請求返回200,怎麽也想不通,想著nginx配置文件也沒問題呀,mongo數據庫也能看到圖片

於是又捋了下流程,首先用的是nginx1.47的版本,mongo-3.2版本

還有mongo和nginx啟動順序也有先後的,先啟動mongo後啟動nginx,因為nginx在啟動的時候要找mongo,也按照這種方法做了,還是報無法加載圖片

於是各種百度,發現原來副本集配置需要在nginx中寫上所有的主機地址

nginx副本集的配置:
location /static/ {
gridfs ebook;
field=filename
type=string;
mongo "foo"

192.168.1.60:27017
192.168.1.61:27017
192.168.1.62:27017;

}

對,沒錯兒! nginx中的副本集中就是這樣寫的。

配置說明

gridfs 表示告訴nginx服務器要調用gridfs模塊

root_collection= 指定Gridfs collection的前綴. 默認: fs

field= 指定用於查詢的字段 可以是 _id 和 filename. 默認: _id

type= 指定查詢的類型,這裏支持 objectid, string 和int. 默認: objectid

user= 指定數據庫的用戶名. 默認: NULL

pass= 指定數據庫的密碼. 默認: NULL

nginx+gridfs+mongodb 配置訪問png圖片顯示無法加載問題