Etiny 启动问题
-
按说明安装完毕后
start-tinyerp
出现cherrypy._cperror.NotReady: Port not free好,去 修改
server.socket_port=8000
试了无数个端口,这些端口应该是没有占用的
都是cherrypy._cperror.NotReady: Port not free
最后都直接到turbogearsstartup.py中了
加了tg.fancy_exception=True的设置,直接使用SimpleWSGIServer
在 都直接写port 了CherryPyWSGIServer.__init__(self, ('192.168.1.169',8999), wsgi_app, 1, '192.168.1.169', request_queue_size = conf( "server.socket_queue_size"), )
包括直接更新cherrypy的配置
cherrypy.config.update({'server.socket_port':8999,'server.socket_host':'192.168.1.169'})最后还是提示
cherrypy._cperror.NotReady: Port not free看来只好归结人品问题了
-
如果报错是端口占用,我们且相信报错没有问题。看了一下Startup.py文件,如果etiny目录中有setup.py,启动时会使用dev.cfg配置文件。你会不会是一直在改default.cfg。
不过用了cherrypy.config.update({'server.socket_port':8999,'server.socket_host':'192.168.1.169'})
就不应该与配置文件有关了, 奇怪。
如果设置'server.socket_host':''会如何?
希望兄弟能继续研究,并把排错过程与我们分享。有一点可以肯定,兄弟你的人品绝对没有问题,我们希望有你这样的技术高手的帮助。
[[i] 本帖最后由 digitalsatori 于 2008-8-8 18:29 编辑 [/i]]
-
过奖,我这个是今天早上用 easy_install etiny 安装的, 查看了一下调用链,会调用etinyxxtinyerpcommands.py . 这里有
if len(sys.argv) > 1:
configfile = sys.argv[1]
elif exists(join(setupdir, "setup.py")):
configfile = join(setupdir, "dev.cfg")
elif exists(join(curdir, "prod.cfg")):
configfile = join(curdir, "prod.cfg")
else:
try:
configfile = pkg_resources.resource_filename(
pkg_resources.Requirement.parse("eTiny"),
"config/default.cfg")
except pkg_resources.DistributionNotFound:
raise ConfigurationError(_("Could not find default configuration."))说明是先取命令行参数,然后依次是有setup.py取dev.cfg,否则取prod.cfg,都没有,则取config/default.cfg,第一个取绝对路径,后二个都在etiny的根目录,后一个在config/default.cfg
晚上我想了一下,既然报错是出在
File "c:python25libsite-packagescherrypy-2.3.0-py2.5.eggcherrypy_cpserve
r.py", line 253, in wait_for_free_port
这里,而我又确认端口是可用的 ,所以,就干脆在该文件这个函数后直接加了个return
def wait_for_free_port(host, port):
"""Wait for the specified port to become free (drop requests)."""
return这样,etiny就跑起来了
真是奇怪
[[i] 本帖最后由 jjx 于 2008-8-8 19:43 编辑 [/i]]