You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MongoDB连接Next.js出现500错误,求助排查解决方法

Next.js连接MongoDB触发500错误

已安装MongoDB,尝试与Next.js建立连接时出现500错误。已尝试以下操作但问题未解决:

  • 切换Mongoose 5、6版本
  • 修改连接地址为mongodb://127.0.0.1:27017/sinema或mongodb://localhost:27017

相关配置与代码信息

连接地址配置

MONGODB_URI= mongodb://localhost:27017/sinema

util/mongodb.js文件代码

import mongoose from 'mongoose';
const MONGODB_URI = process.env.MONGODB_URI;
if (!MONGODB_URI) {
  throw new Error("Your mongodb uri is not defined!");
}
let cached = global.mongoose;
if (!cached) {
  cached = global.mongoose = { conn: null, promise: null };
}
export async function connectToDatabase() {
  if (cached.conn) {
    return cached.conn;
  }
  if (!cached.promise) {
    const opts = {
      useNewUrlParser: true,
      useUnifiedTopology: true,
      bufferCommands:false,
      bufferMaxWntries: 0 ,
      useFindAndModify: false,
      useCreateIndex: true
    };

    cached.promise = mongoose.connect(MONGODB_URI, opts).then((client) => {
      return client
    });
  }
  cached.conn = await cached.promise;

  return cached.conn;
}

首页getServerSideProps代码

export async function getServerSideProps(context) {
  const client = await connectToDatabase();

  const isConnected = await client.connections[0].readyState;

  return {
    props: {
      isConnected,
    },
  };
}

错误表现

  • 页面显示500服务器错误
  • 控制台输出对应连接报错信息

内容的提问来源于stack exchange,提问作者amir rafiei

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 08:40:41