欢迎,来自IP地址为:18.224.33.107 的朋友


之前,用python3写了一个小网站,运行环境为:

  • Windows 10 64bit
  • Python 3.7.2
  • MongoDB 4.0

本机测试时没有任何问题,就想把它移植到VPS的Linux平台。于是在VPS上安装了MongoDB和Python 3.7.2,并且安装了uwsgi程序和 nginx服务器用于提供稳定的web服务。

当把网站程序拷贝到VPS上用uwsgi执行时,却出现了问题,原本运行正常的注册页面忽然报错,提示服务器内部错误,查看日志时发现有如下报错:

pymongo.errors.ServerSelectionTimeoutError: No servers found yet

从字面意思上理解就是没有找到MongoDB服务器,查找了相关资料后才知道由于高版本的pymongo存在一个兼容性bug,会出现类似问题。解决办法也很简单,就是在创建mongoDB对象时增加一个connect=False参数,如下所示:

client = pymongo.MongoClient(connect=False)

之后就不会出现类似问题了,可以愉快的运行网站啦!

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注