首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将CherryPy服务器脚本安装并启动为Windows (使用sc.exe)

将CherryPy服务器脚本安装并启动为Windows (使用sc.exe)
EN

Stack Overflow用户
提问于 2011-05-19 15:40:03
回答 3查看 4.2K关注 0票数 0

我正在尝试安装并启动一个简单的CherryPy服务器作为一个Windows。

下面是脚本:(删除一些行以缩短脚本)。它在从命令行手动执行时完全正常工作)

代码语言:javascript
复制
app = AdminMediaHandler(django.core.handlers.wsgi.WSGIHandler())
logged_app = TransLogger(app)
server = wsgiserver.CherryPyWSGIServer( ('127.0.0.1', 8632), logged_app, server_name='localhost', numthreads=20 )

try:
    server.start()
except KeyboardInterrupt:
    server.stop()

我使用sc.exe来安装和启动服务。安装进行得很好,但我似乎无法开始这项服务。

使用的命令是:(请注意路径中有空格,尽管我用双引号处理这个问题,而且binPath在通过命令行手动执行其字符串时正在工作)

代码语言:javascript
复制
> sc.exe create "ServiceName" binPath= "\"C:\Path to Python\python.exe\" \"C:\Path to CherryPy Script\cherryserver.py\""

> sc.exe start "ServiceName"

无论是尝试使用sc.exe启动服务还是通过services.msc GUI启动服务,我都会收到这个错误:

代码语言:javascript
复制
[SC] StartService FAILED 1053:

The service did not respond to the start or control request in a timely fashion.

据我所知,这是因为python.exe没有实现Windows。

我不希望使用.exe从脚本创建py2exe。

我发现这个答案建议使用与sc.exe不同的工具安装服务,称为srvany.exe & instsrv.exe。然而,我在Win2K资源工具包网站中找不到它们。

有人知道如何成功地安装和启动这个.py吗?

有人知道吗

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-05-19 23:30:59

我最终使用了ServiceInstaller aka SMaster,作为在本答复中说明。给出的答案中的URL被破坏了,我找不到一个有效的URL。我只是提前在本地找到了srunner.exe

注意,还有另一个障碍需要克服,因为ServiceInstaller 无法处理带有 spaces 的paths文件。

因此,我使用旧的DOS路径格式进行服务注册。

我没有注册C:\Program Files\MyApp\python.exe,而是注册了C:\PROGRA~1\MyApp\python.exe

票数 0
EN

Stack Overflow用户

发布于 2011-05-19 17:48:08

CherryPy和作为Windows服务启动的模块一起上船。有关如何安装和运行它的说明,请参见另一个这样的问题。您可能希望从当前的方法(直接将Django应用程序传递给WSGIServer)转向使用cherrypy.tree.graft

票数 5
EN

Stack Overflow用户

发布于 2015-08-21 06:36:10

我更喜欢将普通脚本安装为服务的nssm。您可以根据您的系统在C:\Windows\ system 32或C:\ nssm.exe \SysWOW64 64目录中复制该。在此之后,您可以按以下方式安装服务:

代码语言:javascript
复制
nssm install yourservicename

对于python脚本,必须将应用程序路径设置为python.exe,参数是脚本self。

启动/停止/编辑服务的其他常见命令有:

代码语言:javascript
复制
nssm start yourservicename
nssm stop yourservicename
nssm edit yourservicename
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6061240

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档