libgeos.py MemoryError

问题描述 投票:0回答:1

我正在 Rocky Linux 9 上开发 GeoDjango 项目并使用 Apache 进行部署。当我使用标准 Postgres 数据库引擎时,应用程序运行良好: "ENGINE": "django.db.backends.postgresql", 但一旦我切换到 PostGIS 后端引擎: '引擎': 'django.contrib.gis.db.backends.postgis', 我收到以下错误:

文件“/home/centurion/centurion_web/.venv/lib/python3.12/site-packages/django/contrib/gis/db/backends/postgis/base.py”,第7行,在 从.adapter导入PostGISAdapter 文件“/home/centurion/centurion_web/.venv/lib/python3.12/site-packages/django/contrib/gis/db/backends/postgis/adapter.py”,第 5 行,位于 从 django.contrib.gis.geos 导入 GEOSGeometry 文件“/home/centurion/centurion_web/.venv/lib/python3.12/site-packages/django/contrib/gis/geos/init.py”,第 5 行,位于 来自 .collections 导入 ( # NOQA 文件“/home/centurion/centurion_web/.venv/lib/python3.12/site-packages/django/contrib/gis/geos/collections.py”,第 5 行,位于 从 django.contrib.gis.geos 导入原型作为 capi 文件“/home/centurion/centurion_web/.venv/lib/python3.12/site-packages/django/contrib/gis/geos/prototypes/init.py”,第7行,位于 来自 django.contrib.gis.geos.prototypes.coordseq 导入 ( # NOQA 文件“/home/centurion/centurion_web/.venv/lib/python3.12/site-packages/django/contrib/gis/geos/prototypes/coordseq.py”,第3行,位于 从 django.contrib.gis.geos.libgeos 导入 CS_PTR、GEOM_PTR、GEOSFuncFactory 文件“/home/centurion/centurion_web/.venv/lib/python3.12/site-packages/django/contrib/gis/geos/libgeos.py”,第 88 行,位于 notification_h = NOTICEFUNC(notice_h) ^^^^^^^^^^^^^^^^^^^^^^ 内存错误

我什至还没有在应用程序中实现任何地理空间代码。我在 Windows 上有一个开发服务器,应用程序使用 runserver 命令在该引擎上正常运行。

我尝试直接设置 GEOS_LIBRARY_PATH 和 GDAL_LIBRARY_PATH 但没有成功。我从 django 5.0 降级到 4.2 但没有成功。

django mod-wsgi geodjango geos
1个回答
0
投票

解决了!这是一个 SELinux 问题,阻止访问某些文件,但显示为内存错误。

© www.soinside.com 2019 - 2024. All rights reserved.