通过统一安装程序将Plone 4.2.3安装为独立的Zope实例 机器运行CentOS版本5.9。该机器的本地IP地址是 192.168.1.10。只有我在buildout.cfg中做的更改是:
http-address = 192.168.1.10:8080
然后从./bin/buildout
成功运行/usr/local/Plone-4.2.3/zinstance/
。
没有其他进程侦听端口8080.启动Plone成功:
# pwd; date; /usr/bin/sudo -u plone /usr/local/Plone-4.2.3/zinstance/bin/plonectl start
/usr/local/Plone-4.2.3
Sun Feb 24 14:12:06 EST 2013
instance: . .
daemon process started, pid=2687
问题是ZServer停止,另一个大约每25到30个启动一次 秒,所以是不可用的。 ... / zinstance / var / log / instance.log显示:
------
2013-02-24T14:12:31 INFO ZServer HTTP server started at Sun Feb 24 14:12:31 2013
Hostname: xxxxx
Port: 8080
------
2013-02-24T14:13:11 INFO ZServer HTTP server started at Sun Feb 24 14:13:11 2013
Hostname: xxxxx
Port: 8080
------
2013-02-24T14:13:39 INFO ZServer HTTP server started at Sun Feb 24 14:13:39 2013
Hostname: xxxxx
Port: 8080
------
2013-02-24T14:14:09 INFO ZServer HTTP server started at Sun Feb 24 14:14:09 2013
Hostname: xxxxx
Port: 8080
以及更多此类条目会不断添加到日志文件中。
在.../zinstance/parts/instance/etc/zope.conf
我然后更改了事件日志级别
从 INFO 到 ALL 并设置“zserver-threads 1
”然后停止并启动Plone。
再次ZServer在25到30秒后死亡,另一个ZServer启动,它就死了 25-30秒后等.instance.log中的所有条目都是DEBUG级别。为一个 给定ZServer,最后一个日志条目的日期约为。在其“信息”之后19秒 ZServer HTTP服务器启动“进入。大约8秒后,下一个条目是 另一个“INFO ZServer HTTP服务器已启动”。
问题:为什么ZServer进程死了?
如果fg模式和ZServer死前的最后几个错误,请运行服务器:
zope.configuration.xmlconfig.ZopeXMLConfigurationError:文件“/usr/local/Plone-4.2.3/zinstance/parts/instance/etc/site.zcml”,第16.2-16.23行
ZopeXMLConfigurationError:文件“/usr/local/Plone-4.2.3/buildout-cache/eggs/Products.CMFPlone-4.2.3-py2.7.egg/Products/CMFPlone/configure.zcml”,第102.4行 - 106.10
ZopeXMLConfigurationError:File“/usr/local/Plone-4.2.3/buildout-cache/eggs/plone.app.theming-1.0.4-py2.7.egg/plone/app/theming/configure.zcml” ,第19.4-19.34行
ZopeXMLConfigurationError:File“/usr/local/Plone-4.2.3/buildout-cache/eggs/plone.app.theming-1.0.4-py2.7.egg/plone/app/theming/browser/configure。 zcml“,第12.4-18.10行
ImportError:/usr/local/Plone-4.2.3/buildout-cache/eggs/lxml-2.3.4-py2.7-linux-i686.egg/lxml/etree.so:undefined symbol:clock_gettime
clock_gettime错误显然与dev plone org ticket相关:
和
经过 /usr/local/Plone-4.2.3/buildout-cache/eggs/lxml-2.3.4-py2.7-linux-i686.egg/lxml/etree.so 使用nm并且输出中只出现clock_gettime:
0008a130 T callLookupFallback U clock_gettime 你关闭
“T”符号位于文本(代码)部分。 “U”符号未定义。
谷歌搜索(linux clock_gettime)发现
https://bbs.archlinux.org/viewtopic.php?id=88108和
Ubuntu Linux C++ error: undefined reference to 'clock_gettime' and 'clock_settime'
两者都表示将-lrt添加到链接到的库列表(的末尾) 将解决问题。我在看 Plone的-4.2.3-UnifiedInstaller / base_skeleton / lxml_static.cfg。那种 make文件对我来说并不熟悉。不知道下一步该做什么。
答案 0 :(得分:3)
选择最新版本的4.2.x Unified Installer(撰写本文时为4.2.4),它修复了CentOS上的libxml2构建。然后,在./install.sh命令行上使用“--static-lxml”参数。