Python 2.7 在ubuntu 16之后的日志中出现生产/python错误时出现内部服务器错误(500)->;18更新
最近从Ubuntu16.04升级到Ubuntu18.04服务器(有点不知情)似乎破坏了我们生产的CKAN服务器,该服务器最初是在源代码2.7.2版本的16.04中按照标准安装文档安装的。从这些文档的末尾,我可以使用以下命令在端口5000上运行服务器:-Python 2.7 在ubuntu 16之后的日志中出现生产/python错误时出现内部服务器错误(500)->;18更新,python-2.7,ubuntu-18.04,wsgi,ckan,Python 2.7,Ubuntu 18.04,Wsgi,Ckan,最近从Ubuntu16.04升级到Ubuntu18.04服务器(有点不知情)似乎破坏了我们生产的CKAN服务器,该服务器最初是在源代码2.7.2版本的16.04中按照标准安装文档安装的。从这些文档的末尾,我可以使用以下命令在端口5000上运行服务器:- cd /usr/lib/ckan/default/src/ckan paster serve /etc/ckan/default/development.ini 在浏览器中,一切似乎都很好。但是主生产服务器给了我一个错误500内部服务器错误。如
cd /usr/lib/ckan/default/src/ckan
paster serve /etc/ckan/default/development.ini
在浏览器中,一切似乎都很好。但是主生产服务器给了我一个错误500内部服务器错误。如果Icurl-I 127.0.0.1:8080
,则每次在/var/log/apache2/ckan_default.error.log中我都会收到以下错误:-
Error loading 'pyutilib.component' entry points: ''NoneType' object is not callable'
mod_wsgi (pid=9027): Target WSGI script '/etc/ckan/default/apache.wsgi' cannot be loaded as Python module.
mod_wsgi (pid=9027): Exception occurred processing WSGI script '/etc/ckan/default/apache.wsgi'.
Traceback (most recent call last):
File "/etc/ckan/default/apache.wsgi", line 5, in <module>
from paste.deploy import loadapp
File "/usr/local/lib/python2.7/dist-packages/paste/deploy/__init__.py", line 3, in <module>
from paste.deploy.loadwsgi import *
File "/usr/local/lib/python2.7/dist-packages/paste/deploy/loadwsgi.py", line 8, in <module>
import pkg_resources
File "/usr/lib/ckan/default/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3251, in <module>
@_call_aside
File "/usr/lib/ckan/default/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3235, in _call_as
ide
f(*args, **kwargs)
File "/usr/lib/ckan/default/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3279, in _initial
ize_master_working_set
for dist in working_set
File "/usr/lib/ckan/default/lib/python2.7/site-packages/pkg_resources/__init__.py", line 3279, in <genexpr
>
for dist in working_set
File "/usr/lib/ckan/default/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2785, in activate
declare_namespace(pkg)
File "/usr/lib/ckan/default/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2284, in declare_
namespace
_handle_ns(packageName, path_item)
File "/usr/lib/ckan/default/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2217, in _handle_
ns
loader.load_module(packageName)
File "/usr/lib/python2.7/pkgutil.py", line 243, in load_module
mod = imp.load_module(fullname, self.file, self.filename, self.etc)
File "/usr/local/lib/python2.7/dist-packages/pyutilib/component/__init__.py", line 15, in <module>
core.PluginGlobals.add_env("pca")
AttributeError: type object 'PluginGlobals' has no attribute 'add_env'
mod_wsgi (pid=9027): Target WSGI script '/etc/ckan/default/apache.wsgi' cannot be loaded as Python module.
mod_wsgi (pid=9027): Exception occurred processing WSGI script '/etc/ckan/default/apache.wsgi'.
Traceback (most recent call last):
File "/etc/ckan/default/apache.wsgi", line 5, in <module>
from paste.deploy import loadapp
File "/usr/local/lib/python2.7/dist-packages/paste/deploy/__init__.py", line 3, in <module>
from paste.deploy.loadwsgi import *
File "/usr/local/lib/python2.7/dist-packages/paste/deploy/loadwsgi.py", line 8, in <module>
import pkg_resources
File "/usr/lib/ckan/default/lib/python2.7/site-packages/pkg_resources/__init__.py", line 79, in <module>
from . import py31compat
ImportError: cannot import name py31compat
加载“pyutilib.component”入口点时出错:“”非类型“对象不可调用”
mod_wsgi(pid=9027):目标wsgi脚本“/etc/ckan/default/apache.wsgi”不能作为Python模块加载。
mod_wsgi(pid=9027):处理wsgi脚本“/etc/ckan/default/apache.wsgi”时发生异常。
回溯(最近一次呼叫最后一次):
文件“/etc/ckan/default/apache.wsgi”,第5行,在
从paste.deploy导入loadapp
文件“/usr/local/lib/python2.7/dist-packages/paste/deploy/_-init__.py”,第3行,在
从paste.deploy.loadwsgi导入*
文件“/usr/local/lib/python2.7/dist-packages/paste/deploy/loadwsgi.py”,第8行,在
导入pkg_资源
文件“/usr/lib/ckan/default/lib/python2.7/site-packages/pkg_-resources/_-init__.py”,第3251行,在
@_把你叫到一边
文件“/usr/lib/ckan/default/lib/python2.7/site packages/pkg_resources/_init__.py”,第3235行,作为
石斑鱼类
f(*args,**kwargs)
文件“/usr/lib/ckan/default/lib/python2.7/site packages/pkg_resources/_init__.py”,第3279行,首字母
放大主工作集
用于工作组中的距离
文件“/usr/lib/ckan/default/lib/python2.7/site-packages/pkg_-resources/_-init__.py”,第3279行,在
用于工作组中的距离
文件“/usr/lib/ckan/default/lib/python2.7/site-packages/pkg_-resources/_-init__.py”,第2785行,在activate中
声明_名称空间(pkg)
文件“/usr/lib/ckan/default/lib/python2.7/site-packages/pkg_-resources/_-init__.py”,第2284行,在declare中_
名称空间
_句柄(packageName,路径项)
文件“/usr/lib/ckan/default/lib/python2.7/site-packages/pkg_-resources/_-init__.py”,第2217行,在_-handle中_
ns
loader.load_模块(packageName)
加载模块中的文件“/usr/lib/python2.7/pkgutil.py”,第243行
mod=imp.load_模块(全名、self.file、self.filename、self.etc)
文件“/usr/local/lib/python2.7/dist-packages/pyutilib/component/__init__.py”,第15行,在
core.PluginGlobals.add_env(“pca”)
AttributeError:类型对象“PluginGlobals”没有属性“add_env”
mod_wsgi(pid=9027):目标wsgi脚本“/etc/ckan/default/apache.wsgi”不能作为Python模块加载。
mod_wsgi(pid=9027):处理wsgi脚本“/etc/ckan/default/apache.wsgi”时发生异常。
回溯(最近一次呼叫最后一次):
文件“/etc/ckan/default/apache.wsgi”,第5行,在
从paste.deploy导入loadapp
文件“/usr/local/lib/python2.7/dist-packages/paste/deploy/_-init__.py”,第3行,在
从paste.deploy.loadwsgi导入*
文件“/usr/local/lib/python2.7/dist-packages/paste/deploy/loadwsgi.py”,第8行,在
导入pkg_资源
文件“/usr/lib/ckan/default/lib/python2.7/site-packages/pkg_-resources/_-init__.py”,第79行,在
从…起进口py31compat
ImportError:无法导入名称py31compat
我不明白为什么日志中似乎同时引用了/usr/lib/ckan/default/lib/python2.7和/usr/local/lib/python2.7。但我已经检查了这两个版本的包版本是否与CKAN 2.7的requirements.txt中的包版本相匹配(唯一的例外是psycopg2,我们必须将其升级到2.7.3.2以解决其他地方描述的postgresql版本问题)。我还尝试过各种重新启动/重新启动
任何关于如何修复/调试下一步的想法都将不胜感激。CKAN需要在Python2.7下运行,确保您的ubuntu正在使用Python2.7,如果不需要,您需要将其设置为使用它,为了轻松解决这个问题,我不得不从UBTO迁移到centos 7。我们已经在使用Python 2.7了,开发服务器运行良好。